总共有auto,static,register,extern。
---------------------------
寄存器变量 register,直接放到cpu中的变量 适合使用频繁的变量,可以提高运行速度。
只限于整形,字符型,指针型的局部变量。寄存器变量是动态变量,仅允许说明两个寄存器变量
eg:register int i;
----------------------------
引用型变量extern,某个模块文件中使用到另一个文件中的全局变量,使用extern来说明。
eg:file1.c中定义了全局变量int s,另一个file2.c中的函数fun1()需使用这个变量s
在file2.c中的fun1()对s进行外部变量说明:
fun1()
{
[color=red]extern int s;[/color]
.....
}
定义时分配内存,其他文件引用时不再分配内存。
---------------------------
寄存器变量 register,直接放到cpu中的变量 适合使用频繁的变量,可以提高运行速度。
只限于整形,字符型,指针型的局部变量。寄存器变量是动态变量,仅允许说明两个寄存器变量
eg:register int i;
----------------------------
引用型变量extern,某个模块文件中使用到另一个文件中的全局变量,使用extern来说明。
eg:file1.c中定义了全局变量int s,另一个file2.c中的函数fun1()需使用这个变量s
在file2.c中的fun1()对s进行外部变量说明:
fun1()
{
[color=red]extern int s;[/color]
.....
}
定义时分配内存,其他文件引用时不再分配内存。