龙空技术网

什么是C语言变量的作用域,如何自定义?

嵌入式经验分享 422

前言:

此刻同学们对“c语言变量的作用是什么”都比较关切,小伙伴们都需要知道一些“c语言变量的作用是什么”的相关内容。那么小编同时在网摘上搜集了一些关于“c语言变量的作用是什么””的相关知识,希望朋友们能喜欢,看官们快快来了解一下吧!

在写代码的过程中,经常会遇到变量的作用域的问题。所谓的域,从形式上看,就是一对花括号,或者具有类似功能的符号。看下面这个例子

//外部变量a值为3extern int a;//1int main(){	int a = 20;	{		int a = 50;		printf("value of a : %d \n", a);	} printf("value of a : %d \n", a); return 0;}

输出是

value of a : 50value of a : 20

比如,C99之前的编译器,只能在域的开头定义变量。这个程序里有三个同名变量a。在main函数里,定义了一个值为20的a,此时,全局变量的a被覆盖了,但是在main里又增加了一个域{},新定义了一个值为50的a,在这个域内,值20的a又被覆盖了。但是在这个域之外,值20的a又恢复了。

同名变量变量的作用域就是当前域最高,最近的外层域次。这个例子很好的说明了域的作用范围和使用方法。详情请看工程师讲C -2-跨平台数据类型、作用域、赋值(附实例)

标签: #c语言变量的作用是什么