【发布时间】:2016-01-06 15:41:29
【问题描述】:
我知道将全局变量声明为 STATIC 会使其对当前文件可见。每次在文件中调用函数时,变量是否保留其数据?
例如,
假设下面的一些文件调用func1(),它修改了静态全局变量数据,然后调用func2()再次修改它。
下次文件调用 func1() 时,它会修改一个新的数据变量结构吗?还是会保留第一次调用中修改过的数据?
STATIC MY_DATA Data1;
void func1( ){
//modify Data1
func2(Data1);
}
void func2 (MY_DATA data){
// modify data
}
【问题讨论】:
-
你为什么不测试一下看看;)?
-
从来没有(从来没有*)问过软件开发问题,而自己更容易尝试。通过提问,你会学到很多东西。
-
请注意,没有限定符
STATIC。我想你问的是关键字static。 -
嗯?这个问题是如何基于所有意见的?也许它应该关闭,但不是因为这个原因。