《零基础学C语言》—高级应用篇
① 共用体变量中起作用的成员是最后一次存放的成员,在存入一个新的成员后原有的成员就失去作用。共用体变量的地址和它的各成员的地址是一样的。
② 位段类型是一种特殊的结构类型,位段类型对成员位段的引用与结构体对成员变量的引用方式是一样的。可以用"%d",“%x”,“%u”,"%o"等格式字符,以整数形式输出位段,在数值表达式中引用位段时,系统自动将位段转换为整数。
③ 带参数宏定义和不带参数宏定义都不分配内存空间,因此在带参数的宏定义中,不必为形式参数做类型定义。
④ 宏展开时,不对实参表达式做任何计算,因此,每个形参在宏定义字符串中都需要由小括号括起来。
#define SUM(x,y) x+x*y+y //错误的写法
#define SUM(x,y) ((x)+(x)*(y)+(y)) //正确的写法
⑤ #include指令,用尖括号时,系统到存放C库函数头文件所在的目录中寻找要包含的文件;用双引号时,系统先在用户当前目录中寻找要包含的文件,若找不到,再到存放C库函数头文件所在的目录中寻找。
⑥ 如果file1.c中包含文件file2.h,且file2.h中有全局静态变量,则该全局变量不需要再用extern声明也在file1.c中有效。
网络套接字编程