zoukankan      html  css  js  c++  java
  • 编程精粹:编写高质量的C语言代码———笔记一

    第一章 假想的编译程序

    • 要记得对空语句进行处理,最好使用NULL使其明显可见
      char * strcpy(char* pchTo, char* pchFrom)
      {
      char* pchStart = pchTo;
      while(*pchTo++ = *pchFrom++)
          NULL;
      return (pchStart);
      }
    • 某些编译程序允许用户在 && 和 | | 表达式以及 if、for 和 while 构造的控制表达式
      中禁止使用简单赋值,这样就可以帮助用户查出这种错误。这种做法的基本依据是用户极有
      可能在以上五种情况下将等号==偶然地健入为赋值号=。

      上面的函数在编译的时候会产生错误警告,所以应该写成
    char * strcpy(char* pchTo, char* pchFrom)
    {
    char* pchStart = pchTo;
    while((*pchTo++ = *pchFrom++) != '' )
        NULL;
    return (pchStart);
    }
    • 所有的函数都必须有原型。这样编译程序了解程序中每个函数的参数情况,可以为不同的函数选择它认为的最有效率的调用约定。
    • 如果想对自己的C语言错误有更加详细的检查,应该使用lint。--(这个东西至今也没有用过)
    • 如果有单元测试,就进行单元测试

     

  • 相关阅读:
    Vue中事件委托的使用
    java提取每个汉字的首字母
    想把大脑存进电脑,我为什么要写博客
    CF 1606 D题题解
    js前端 音频波形图像展示
    js前端 仪表盘实现
    js前端 bootstrap select的使用
    UOS系统维护命令
    linux 打印机管理常用命令
    linux 调用shell命令
  • 原文地址:https://www.cnblogs.com/SpeakSoftlyLove/p/3395156.html
Copyright © 2011-2022 走看看