读书笔记--C陷阱与缺陷(四)

来源:互联网 发布:菜鸟商城android源码 编辑:程序博客网 时间:2024/05/16 04:53

第四章

1. 连接器

      C语言的一个重要思想就是分别编译:若干个源程序可在不同的时候单独进行编译,恰当的时候整合到一起。

      连接器一般与C编译器分离,其输入是一组目标模块(编译后的模块)和库文件,输出是一个载入模块(执行文件)。

 

2. 命名冲突与static修饰符

      static修饰符可有效减少命名冲突!

      如: static int a;

      与

            int a;

      声明含义相同,但是前者限制a的作用域在一个源文件(.c)内,其他源文件是不可见的。但后者都是可见的会产生命名冲突。

      如果若干个函数需要共享一组外部对象,可将这些函数放到一个源文件内,把该共享对象在这个源文件以static修饰。

     

      函数冲突也是这种解决方式。

      如: static int g(int);

      即一个函数只被同一源文件的其他函数调用时,应该将该函数声明为static。

  

  第四章的干货感觉比较少,连接器的理解和static使用算是相对重要的;后面讲到的函数参数返回值,检查全局外部类型,

使用良好的头文件声明函数和全局变量都可以解决。先记录这么多吧,开始第五章~~

  

原创粉丝点击