static和extern关键字2-对变量的作用
2013-09-19 00:56
267 查看
一、在Java中,全局变量的定义没有严格的位置规定:
二、在C语言中,全局变量定义的位置是有限制的:
默认情况下,一个函数不可以访问在它后面定义的全局变量
第1种办法:将变量a定义在main函数的前面
第2种办法:在main函数前面对变量a进行提前声明
三、重复定义同一个变量:
重复定义同一个变量a代表着同一个变量。
四、不同源文件中的同名变量:
假如在另一个源文件中也有全局变量int a;,那么这两个源文件的所有全局变量int a;都代表着同一个变量。
五、static关键字:
但很多时候,我们并不想让源文件中的全局变量跟其他源文件共享,相当于私有的全局变量,那么你就得用static关键字来定义变量。
六、static和extern的总结:
1.extern可以用来声明一个全局变量,但是不能用来定义变量
2.默认情况下,一个全局变量是可以供多个源文件共享的,也就说,多个源文件中同名的全局变量都代表着同一个变量
3.如果在定义全局变量的时候加上static关键字,此时static的作用在于限制该全局变量的作用域,只能在定义该全局变量的文件中才能使用,跟其他源文件中的同名变量互不干扰
七、static修饰局部变量:
1.延长局部变量的生命周期,程序结束时候,局部变量才会被销毁。
2.并没有改变局部变量的作用域。
二、在C语言中,全局变量定义的位置是有限制的:
默认情况下,一个函数不可以访问在它后面定义的全局变量
第1种办法:将变量a定义在main函数的前面
第2种办法:在main函数前面对变量a进行提前声明
三、重复定义同一个变量:
重复定义同一个变量a代表着同一个变量。
四、不同源文件中的同名变量:
假如在另一个源文件中也有全局变量int a;,那么这两个源文件的所有全局变量int a;都代表着同一个变量。
五、static关键字:
但很多时候,我们并不想让源文件中的全局变量跟其他源文件共享,相当于私有的全局变量,那么你就得用static关键字来定义变量。
六、static和extern的总结:
1.extern可以用来声明一个全局变量,但是不能用来定义变量
2.默认情况下,一个全局变量是可以供多个源文件共享的,也就说,多个源文件中同名的全局变量都代表着同一个变量
3.如果在定义全局变量的时候加上static关键字,此时static的作用在于限制该全局变量的作用域,只能在定义该全局变量的文件中才能使用,跟其他源文件中的同名变量互不干扰
七、static修饰局部变量:
1.延长局部变量的生命周期,程序结束时候,局部变量才会被销毁。
2.并没有改变局部变量的作用域。
相关文章推荐
- C语言 static和extern关键字 对变量的作用
- 【C语言】20-static和extern关键字2-对变量的作用
- C语言 static和extern关键字 对变量的作用
- 【转】二十、static和extern关键字2-对变量的作用
- 【C语言】20-static和extern关键字2-对变量的作用
- C语言基础-12-static和extern关键字2-对变量的作用
- C 语言-static和extern关键字2-对变量的作用
- static(c中定义的关键字1、被其修饰者 外部无法使用(相反的都可以使用extern在外部使用) 2、函数局部变量使用成为静态的放入静态池-生存期改变。c++进行了扩充,使它在类中有了特殊作用)
- 学习笔记之20-static和extern关键字2-对变量的作用
- 【C语言】20-static和extern关键字2-对变量的作用
- 【C语言】20-static和extern关键字2-对变量的作用
- 【C语言】20-static和extern关键字2-对变量的作用
- 【C语言】20-static和extern关键字2-对变量的作用
- 【C语言】20-static和extern关键字2-对变量的作用
- 16-static和extern关键字2-对变量的作用
- extern 和 static 对变量的作用
- C语言中关键字auto、static、register、const、volatile、extern的作用
- 关键字的作用 static,extern,const,volatile,register,inline
- 黑马程序员——C语言之全局变量和局部变量以及static和extern修饰符的作用
- C语言 static和extern关键字 对函数的作用