《C陷阱与缺陷》6

时间:2022-10-26 16:08:53
2016年11月23日 22:10:06
——————————————《C陷阱与缺陷》————————————————

1.ANSI C标准所能保证的只是,C实现必须能够区别出前6个字符不同的外部名称。而且,这个定义中并没有区分大小写
  因此:print_fields与print_float不恰当,而State与STATE也不合适

2.C语言为编程者提供了3种不同长度的整数:short,int,long
     C语言的定义中对各种不同类型帧数的相对长度做了一些规定:
     ①3中类型的整数其长度是非递减的。即:short整数容纳的值肯定能被int整数容纳,int整数容纳的值肯定能被long整数容纳
     ②一个普通(int)整数足够大以容纳任何数组下标
     ③字符长度由硬件特性决定

3.在右移的时,空出的位是0填充,海华丝由符号位的副本填充?
     如果是无符号数,那么是0填充
     如果是有符号数,那么可能是0填充,也可能是符号位副本填充(在linux中补符号位)

4.null指针并不指向任何对象,因此除非是用于赋值或比较运算,出于其他任何目的使用null指针都是非法的

《C陷阱与缺陷》全部结束,感觉这本书比较老,现在的编译器比当时先进很多,书中的很多知识点只是草草看过,也许很重要的东西我并没有记住。
书不厚,也许以后会再拿起来看,一定还有新的收获