需要知道的几个属性:链接属性,生存期,作用域,存储类型。
1. 链接属性:外部链接、内部链接、无链接
2. 存储类型
1)auto 每次运行到声明语句时,都为该变量生开辟一个新的空间。
2)static 静态存储类型与auto相对,初始化只在声明时有用。
3)external 声明了在文件外部定义的变量
4)register 除无法获得地址外,其他与auto一样
3. 作用域
分三种作用域,局部作用域、文件作用域、全局作用域。
4. 生存期
变量的生存期也有三种,但它们没有预定义的关键字名称。
第一种是extern和static变量的生存期,它从main()函数被调用之前开始,到程序退出时为止。
第二种是函数参数和auto变量的生存期,它从函数调用时开始,到函数返回时为止。
第三种是动态分配的数据的生存期,它从程序调用malloc()或calloc()为数据分配存储空间时开始,到程序调用free()或程序退出时为止。