!c语言 c语言全局变量的定义是什么?
浏览量:2102
时间:2021-03-11 06:51:52
作者:admin
c语言全局变量的定义是什么?
如果没有static或extern,则意味着定义一个全局变量,其范围从定义的开始到当前文件的结尾都受到限制。Static用于将全局变量的范围从定义的开头限制到当前文件的结尾,其他文件不能使用extern使变量可见。extern的功能是声明一个在别处定义的全局变量。它不是重新定义一个新的全局变量,而是扩展全局变量的范围。a、 C:int i//定义i变量,并使用extern扩展其范围。Static int j//定义j变量,使用Static限制j。只使用b.ceextern int i//正确,将i的范围扩展到b.C中的extern int j//错误,因为j在定义期间是静态限制的
C语言,请看如何放置全局变量和局部变量。如果将全局变量和局部变量放在一个代码文件中,则会发生冲突。所以不明显,我将编写一个C程序代码,如下图所示:
在这个C程序中,我在main函数外定义了一个全局变量para,并给出一个初始值1。在C程序的主函数中,我定义了一个变量para,它与主函数外的变量同名。
这里,C程序主函数外的变量的生命周期在整个代码中是有效的,而主函数的变量只在主函数中有效。
也就是说,当您在C程序的主函数中操作para变量时,实际上是在主函数中操作变量,而外部para变量的值仍然是1。在这个C程序中,main函数中的para变量隐藏了外部变量para。
因此,学生在学习C语言时,必须注意全局变量被同名局部变量覆盖的问题,还要了解变量的范围和生命周期。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。