c++ primer

  1. p16

C++ 旧风格 头文件 以.h结尾 新式风格 没有扩展名 需要使用 namespace std

访问 名称空间std 四种方法:

using namespace std 放在函数定义之前

放在特定函数中

使用 using std::cout 使用制定元素如 cout

不使用using指令 使用前缀std::

  1. p19

控制符 endl 重启一行

换行符 \n

用引号括起的字符串时,通常用\n,其他用endl

3.p39

位与字节

计算机内存基本单位 位(bit)

字节 8bit

c++工具检查类型长度 运算符sizeof 和头文件 limits

#include or

INT_MAX SHRT_MAX LONG_MAX LLONG_MAX p41

sizeof(int)

64位win7 系统

int 4bytes short 2bytes long 4 longlong 8

4.p43

无符号类型 即short 表示 -32768 到 32767 无符号 为 0 到 65535

用关键字 unsigned

如果超出了限制,其值将为范围另一端的取值

  1. p54

const 限定符 来修改变量声明和初始化

一种常见的做法就是将名称的首字母大写 const int Months = 12;

或者 将整个名称大写 MONTHS

或者 是以字母k打头 kmonths

疑问:const 和 define 区别

6. p59

cout.setf(ios_base::fixed,ios_base::floatfield)ios_base::fixed是设置cout为定点输出格式ios_base::floatfield是设置输出时按浮点格式,小数点后有6位数字

7.p60

除法 如果其中只有一个或者两个操作数是浮点值,则小数部分将保留,结果为浮点数。

8.p 64

当运算涉及两种类型时,较小的类型将被转换为较大的类型,

否则,说明操作数都是整数,因此执行整形提升

9.p65

强制转换

(long)thorn c

long(thorn) c++

强制转换类型不会修改thorn变量本身,而是创建了一个新的、指定类型的值,可以在表达式中使用这个值。

10.p65

static_cast<>可用于将值从一种数值类型转换为另一种数值类型

static_cast(thorn)

11.p66

auto 编辑器将把变量的类型设置成与初始值相同

auto n = 100;//n is int

auto 处理复杂类型 自动类型推断的有时才能显示出来,,

疑问 auto

12.p73

数组初始化规则

只有在定义数组才能使用初始化,此后就不能使用了,也不能将一个数组赋给另一个数组

int cards[4] = {2,6,8,10};// ok

int hand[4];//ok

hand[4] = {3,3,2,5};//not

hand =cards //not

然而,可以使用下标分别给数组中的元素赋值。

可以提供的值少于数组的元素数目,其他元素为0

如果提供的方括号内为空, C++编译器将计算元素的个数 (但是让编译器去做 是件很糟糕的事情)

建议: short things[] = {1,5,2,5};

int num_elements = sizeof things / sizeof(short);

{} 中禁止缩窄转换 (浮点转整型 ,超出范围)

13.p74

疑问:书上说 初始化数组 为嘛必须要用static ???

老的编译器不支持(auto变量)数组声明时初始化, 所以必须加上static现在的编译器都支持 int a[5]={1,2,3}; 自动变量初始化,所以不必非加上static至于一定要问有什么作用,估计就是为了兼容以前的老编译器,还有,就是你看得书实在是太老了,作者当时只能这么写,因为编译器不支持没static的数组初始化.

14.p78

cin.getline() 参数1:存储输入行的数组名称 参数2:要读取的字符数

get()接受的参数相同,但是get()并不再读取并丢弃换行符 而是将其在输入队列中。 get(name,20).get();

查看下一个输入字符,如果是换行符,说明已经读取了整行,否则说明该行还有其他输入。

疑问 :17章

15.p83

string类简化了字符串合并操作,可以使用运算符+将两个string对象合并起来,还可以使用运算符+=将字符串加到string对象的末尾。

string str3;

str3 = str1+str2;

str1 +=str2;

原文链接: https://www.cnblogs.com/smallyin00/archive/2012/11/22/2782937.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/70240

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月9日 下午2:13
下一篇 2023年2月9日 下午2:13

相关推荐