在一个文件中定义一个全局变量n,主函数main(),在另一个文件中定义函数fn1(),在main中对n进行赋值,再调用fn1(),在fn1()中也对n进行赋值,显示n最后的值
时间: 2024-10-09 19:00:59 浏览: 30
vue打包之后生成一个配置文件修改接口的方法
在一个C++程序中,如果要在两个不同的源文件中共享全局变量`n`,你需要遵循一些规则:
1. **声明全局变量**:首先,在一个头文件(如`global_variable.h`)里声明`n`为全局变量,通常使用`extern`关键字表示它将在其他文件中被声明而不是定义。
```cpp
// global_variable.h
extern int n;
```
2. **定义全局变量**:在其中一个源文件(如`main.cpp`)里定义`n`,给它初始值。
```cpp
// main.cpp
#include "global_variable.h"
int n = 0; // 或者你想设置的任意初始值
int main() {
// ... 主函数内容 ...
n = some_value; // 在main中初始化n
fn1(); // 调用fn1()
}
```
3. **在其他文件中访问**:在另一文件(如`fn1.cpp`),需要包含`global_variable.h`并能正常使用`n`,尽管它实际上是被定义在`main.cpp`里的。
```cpp
// fn1.cpp
#include "global_variable.h"
void fn1() {
// 在fn1中可以操作n
n = another_value; // 这里会改变main中n的值
// ... 函数体内容 ...
}
```
当你运行整个程序时,`n`的最终值将取决于最后一次修改它的函数(这里是在`fn1()`里)。注意,全局变量`n`的生命周期贯穿整个程序,除非你在某个特定点将其置为`NULL`或释放。
阅读全文