《C专家编程》笔记第二章--这不是Bug,而是语言特性

150 阅读1分钟

笔记

P31

主要讲解了switch的一些基本运用,这里就不过多描述。

P34

相邻的字符串常量将自动合并成一个字符串,例:"a""b"相当于"ab".

P36

定义C函数时,在缺省情况下函数的名字是去全局可见的。可以在函数名前面加一个冗余的extern关键字,也可以不加,效果是一样的。

P38

sizeof : 在动态内存分配时,经常用到sizeof进行内存大小的计算,一直以为sizeof()是一个函数,返回值是形参的字节数,直到我读了这本书之后才发现打错特错。sizeof是一个操作符,就像 &&、**||**一样。

当sizeof的操作数是一个结构名时,需要在名称两边加上括号,操作数是一个变量时,括号可以不用加。

例:

    int* p;
    //i等于p指针所指内容的大小,由于*p是一个变量,所以可以不用加括号
    i = sizeof * p;

P38

运算符优先级的问题: 在优先级上我并不想做过多的记录,因为完全可用多用圆括号()来解决大多数优先级问题,这让别人也很容易理解代码。