1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > C语言中全局变量和局部变量 内部函数和外部函数的区别

C语言中全局变量和局部变量 内部函数和外部函数的区别

时间:2020-02-27 21:55:53

相关推荐

C语言中全局变量和局部变量 内部函数和外部函数的区别

1.局部变量和全局变量

1.局部变量:即在函数代码块中内部定义的变量名,只在此函数范围内有效。(只在子程序内定义和作用)

在c语言中,局部变量可以和全局变量重名,但是局部变量会覆盖全局变量,从而在引用此变量时会用到同名的局部变量而非全局变量。一个局部变量被其他对象引用时,会是一个空值,全局变量却不会。

2.全局变量:既可以是对于某对象函数(子程序)创建,也可以在程序的任何地方创建,且可以被本程序所有对象或函数引用。

全局变量可增加函数间数据联系的渠道:由于同一文件中的所有函数都能引用全局变量的值,因此如果在一个函数中改变了全局变量的值,就能影响到其他函数中全局变量的值,相当于各个函数之间有直接的传递渠道。

3.使用注意:

全局变量因生命周期更长,会占用相对更多内存。全局变量因内存不需再重新分配,因此运行速度能相对提高。重名时,局部变量覆盖全局变量。可以用extern对外部变量(子程序外部)进行声明,使全局变量作用域从声明处起直至子程序文件结束。(变量只能定义一次,却可以声明多次。定义分配存储空间,而声明不会。)为了便于区别两者,C程序设计人员有一个习惯,将全局变量名的第一个字母大写。如:float Max=0,Min=0; //定义全局变量Max,Minc语言规定,变量要定义在当前代码块的最前面。

2.内部函数和外部函数

1.内部函数:只被本文件中其他函数所调用。

定义内部函数时,在函数名、函数类型前加static。 static 类型名 函数名(形参表); 例如:static int fun(int a,int b);

2.外部函数:可供其他文件调用。

定义外部函数时,在函数首部左端加extern。例如:extern int fun(int a,int b);

若在定义函数时省略extern,则默认为外部函数。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。