c 中如何把全局变量定义在子函数后面
1个回答
展开全部
把变量定义在主函数之外,即把变量设置为全局的。一般我们都把变量的定义放在函数中,因此变量的范围就是在本函数中。可是如果定义在所有函数的外面,这样所有的函数中,都可以使用本变量。你可以试一下这个程序。定义一个全局变量a,在主函数中进行赋值,然后在子函数中进行输出,结果是5.#include<stdio.hint a搜索;void func();//函数声明int main(){ a=5; func();}void func(){ printf("%d\n", a);}+++++++++++++++++++++++++++++++++++++++++++++++++++当然,除了定义全局变量这个方法,还有其他的方法,那就是指针。在子函数的参数中传递变量的地址,依然可以使用该变量,依然能够改变该变量的值。比如下面这个程序,在主函数中a的值为5,将变量a的地址传递过去,子函数将该地址中的变量的值设置为3,然后主函数输出,结果却是3.#include<stdio.hvoid func(int *b);//函数声明int main(){ int a=5; func(&a);//把变量a的地址传递过去 printf("%d\n", a);}void func(int *b){ *b=3; //将地址b中变量的值设置为3}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询