一、常见关键字
auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while
1、static:
(1)修饰局部变量:局部变量最初创建时是存储在栈区,经过static修饰后局部变量存储在静态区,所以该局部变量除了作用域也不销毁,生命周期比较长。
(2)修饰全局变量:改变了全局变量的链接属性,一般全局变量具有外部链接属性,但被修饰后就变成了内部连接属性,该全局变量只能在本源文件中使用,其他文件无法使用。
(3)修饰函数:与全局变量相似,函数被修饰后只能在本源文件中使用。
2、extern
(1)修饰变量:声明外部符号;
(2)修饰函数:声明来自外部的函数。
3、register(寄存器)
register int num = 10;
起到一个建议的作用,建议将num放在寄存器中,最终是否存入寄存器,由编译器决定。
寄存器变量无法取地址,取地址