背景:外部变量 extern
源代码://1.cpp#include <iostream>using namespace std;#include "2.h"
int main(){ int n; n =20; fn1(); cout << n; return 0;}
//2.hextern int n;void fn1(){ n = 30;}
错误提示:1.obj : error LNK2001: unresolved external symbol "int n" (?n@@3HA) 无法定位的外部符号Debug/1.exe : fatal error LNK1120: 1 unresolved externals
错误分析:编译时通过,compiling 产生obj按build,链接,lining,生成exe时错误
研究结果:如果连接程序不能在所有的库和目标文件内找到所引用的函数、变量或标签,将产生这个错误消息。可能产生LNK2001错误的原因: 变量不是全局变量