等级考试二级C专家编程读书笔记(下)

等级考试二级C专家编程读书笔记(下),第1张

等级考试二级C专家编程读书笔记(下),第2张

1.尽早频繁使用lint,不要等到最后才使用lint。Lint是软件的道德标准

2。关于typedef。
先看一个语句:void(* sign(int SIG,void(* func)(int)))(int);
对于它,可以简化为:
typedef void(* ptr _ to _ func)(int)
ptr _ to _ func signal(int,ptr _ to _ func)
对于像上面这样复杂的typedef声明,
注意:
①不要把几个声明者放在一个typedef中;
②不要在声明中间嵌入typedef。
typedef和define的区别:
①宏类型名可以用其他类型说明符扩展,但不能对定义的类型名进行扩展
typedef。
②在连续声明中,typedef定义的类型可以保证声明中的所有变量都是同一类型,而#define定义的类型则不能。
[br/]3。数组和指针是不同的。在某些情况下,它们是相同的,但也有不同的情况。比如:
File 1:int mango[100];
文件二:extern int * mango
这个不一样,相当于把整数和浮点数混淆了。

4。转弯实验,人工智能,人机对话,都是很有意思的东西。5 .
。堆区用于动态分配的存储,也就是malloc(内存分配)函数获得的内存,通过指针访问。堆中的一切都是匿名的——不能通过名字直接访问,只能通过指针间接访问。
分配的内存总是对齐以适合其大小的原子访问。
堆的末尾由一个名为break的指针标识。当堆管理器需要更多内存时,它可以通过调用brk和sbrk来移动指针。一般情况下,您不必亲自显示calling brk。如果分配的内存容量很大,最终会自动调用brk。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 等级考试二级C专家编程读书笔记(下)

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情