《C语言笔记:符号的链接属性》

三种链接属性
1,程序的生成过程:编译+链接。编译以文件为单位,编译器将所有的源文件依次读进来,单个文件进行编译,最后将函数/变量等变成.o的二进制机器码;链接以工程为单位,链接器将编译之后产生的.o文件整体的输入,然后处理链接成一个可执行程序。
2,链接属性就是在链接过程中,对于一个.o文件中的符号被链接的范围。
3,链接属性1 外链接属性
  • 变量和函数可以在整个程序范围内(可以跨文件)进行链接,比如普通的函数和全局变量属于外链接。
4,链接属性2 内链接属性
  • 变量和函数可以在当前c文件内部范围内进行链接(不能在当前c文件之外的其他c文件中进行访问、链接)。static修饰的函数和全局变量属于内链接。
5,链接属性3 无链接属性
  • 符号本身不参与链接。所有的局部变量(auto\static的)都是无链接的。
 
 

posted @ 2020-11-21 19:32  xuxianshen  阅读(122)  评论(0编辑  收藏  举报