如何声明一个对象数组为全局变量

 我来答
jp...e@163.com
2016-09-16 · 超过110用户采纳过TA的回答
知道小有建树答主
回答量:159
采纳率:0%
帮助的人:191万
展开全部
在C语言中,全局变量和函数声明及定义并列,也就是说,声明在最外层作用域的变量即为全局变量

如在如下程序中

int i;

int main()
{
int i_copy = i;
i = 9;
return 0;
}

int i就是一个全局变量,故在main函数中可以调用或修改i的值
所以,定义数组也和普通全局变量的方法相同,如

char str[10];

int main()
{
str[0] = 'a';
str[1] = '\0';

return 0;
}

但是有几点需要注意:
C中自上向下语法分析和编译语法树,如果要让所有函数都能调用该全局变量,就要把其放在所有函数定义之前,确保声明的作用域覆盖整个程序;
在全局变量声明时,其初始值必须为编译时常量,不能为变量;
若要使用程序外的全局变量,需要在修饰符中加入extern关键字,并不要忘了和原本定义处链接
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式