首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

extern的几道题目解决办法

2012-06-10 
extern的几道题目C/C++ code关于extern的几道题目题目1:为什么变量i编译错,请指出以下解释有什么不妥之处:

extern的几道题目

C/C++ code
关于extern的几道题目题目1:为什么变量i编译错,请指出以下解释有什么不妥之处:对于extern声明的全局变量,声明之后,只会在整个exe中保留一份,a.cpp包含了a.h,即告诉了 a模块变量i是来自外部模块。 同理:在main模块中,变量i告诉了main模块,变量i来自外部模块。 对于函数fun也是同样解释。代码:a.hextern int i;extern void fun();a.cpp#include "stdafx.h"#include "a.h"void fun(){    i++;}main.cppint main(){    extern void fun();    extern int i;    i=2;    fun();    return 0;}题目2:把a.h 中的 extern int i; 改成:int i, 为什么编译没有错误。请指出原因。 




[解决办法]
代码中i一直没定义,因为extern int i只是告诉编译器在某个地方定义i,并不定义,则编译器会去找i的定义。。。。但却找不到。。。因为你没定义。怎么可能找到。。。。所以编译出错。。。

热点排行