Skip to content

C 和指针

  • C和指针 这本书是给学习过高级语言但没学过C的人准备的(而且是上古时代),入门不浅,内容过时 1

Tips

  • 使用#if 0 ........#endif去除代码
  • 警惕三字母词
  • typedef声明的标识符是内部链接的
  • 可用寄存器有限,函数用之前要在运行时堆栈中保存原有数据
  • 自动变量初始化与赋值无差别
  • 注意for与while在使用continue时的区别 (迭代)
  • 算术移位与逻辑移位取决于实现
  • 内嵌赋值可能因为截断而发生错误
  • 三元运算符先判断后运算 (没运算的不会有副作用)
  • 真值太多了,if(a)!=if(a==TRUE)
  • 移位必须是非负
  • 指针的比较标准保证可以比较数组与数组最后的下一个位置,但不保证非数组或者数组前一个位置的情况,但实现可能会按照你的预期
  • 结构会自动对齐,所以安排好成员顺序
  • 一位的signed int 只有-1和0
  • 警惕内存分配失败,文件打开失败
  • 用sizeof提高可移植性
  • 注意缓冲区大小
  • 调试用的printf后强制刷新
  • 注意分配的缓冲区的生存周期
  • 链接器决定外部标识符的最大长度

这本书每一章后的总结非常好,建议看总结就行