您可以在函数内声明一个全局变量:
void f() {
extern int i;
}
Run Code Online (Sandbox Code Playgroud)
但是如果你想使用它,你还需要在周围的命名空间中定义它.
作为全球性的,定义不必是相同的翻译单元,而是受一个定义规则的约束.
如果,如注释中所示,您实际上需要一个持久的局部变量,在第一次调用该函数时初始化,那么这就是本地静态变量的行为:
void f() {
static int i = whatever(); // initialised the first time
i = something_else(); // the new value is preserved for next time
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
103 次 |
| 最近记录: |