目录标题
指针和数组
数组名是数组首元素的地址
指针加1等于加一个存储单元,不是加一个字节数
定义ar【n】等于*(ar+n)
10.4
将数组传入函数必须使用图片最下面一行的方法,即数组名和数组大小分开传入,不能在函数内使用sizeof()函数
传入两个指针
10.6
对形参使用const,保护原始数据
11.4—P295
12章
具有外部链接的变量可以在多文件程序中任何地方使用
具有内部链接的变量可以在一个文件的任何地方使用—static
变量具有静态存储时期,他将在程序执行期间一直存在
其中,具有外部链接的变量如果在别的文件中定义,则必须在使用前用extern声明,不用再次指明大小
volatile是防止编译器优化的限定词
14章 结构体struct
14.7 向函数传递结构信息
-
传递结构成员
-
使用结构地址
-
传递结构(当成参数直接传递)
14.12 typedef-------P410
创建标签
malloc() free() --341
struct flex * pf;//声明一个指针
pt=malloc(sizeof(struct flex)+5*sizeof(double));
15章 位操作
掩码
打开位
关闭位
flags=flags&~MASK; //mask=0x0000 0010
mask为1的位关闭
转置位
查看一位的值
反转最后n位
int invert_end(int num,int bits)
{
int mask=0;
int bitval=1;
while(bits-->0)
{
mask!=bitval;
bitval<<=1;
}
return num^mask;
}
C预处理器
#ifdef,#else和#endif指令
内联函数
17章 高级数据表示
从数组到链表486