c++中extern的作用
答:意思是重复定义,是一个程序运行出现的错误。出现该错误则是因为程序中某个变量重复定义,把头文件中的变量定义前加extern(只是变量声明不用初始化),再在某一个要调用该变量的c文件的程序之前再定义(注意第一个调用的c文件要负责附带初始化该变量,其他调用的c文件就不需要初始化过程啦)。
答:例5:你认为这个程序会编译成功吗?这是C语言标准中的一个内容,如果一个变量只是被声明并且同时又被初始化了,那么该变量的内存也将被分配——换句话说,该变量将被认为是已定义的。因此,按照C语言标准,这个程序可以顺利编译并正常执行。 这就是C中extern关键字的一些补充介绍。 简单总结:
答:struct:声明结构体变量或函数 break:跳出当前循环 else :条件语句否定分支(与 if 连用)long :声明长整型变量或函数 switch :用于开关语句 case:开关语句分支 enum :声明枚举类型 register:声明积存器变量 typedef:用以给数据类型取别名(当然还有其他作用)char :声明字符型变量或函数 extern:...
答:作用为定义一个类型为type,变量名为var的全局变量,并赋初始化值为init_value。当=init_value部分被省略时,系统自动初始化为0值。要在文件其它位置或其它文件中使用时,需要用extern进行声明,声明格式为 extern type var;注意不可以有初始化值。声明后,可以在声明语句到声明语句所在文件尾使用该变量...
答:extern说明这个函数是在其它的文件中已经有的,用extern只是引用其它文件的函数 。
答:/*extern在C和C++中是为了使用全局变量的。说明变量具有外部链接属性!在C和C++语言中,使用全局变量有两种方法。其一:你在一个.cpp文件中定义了一个全局变量,如果你在 别的地方需要使用这个变量你可以用extern 声明 一下,告诉编译器这个变量是在别的.cpp文件定义过的 全局变量。其二:也是建议用的...
答:下面是一个动态库导出的示例:extern "C" int dllfunc();//以C函数接口的方式导出函数dllfunc这样编译器在编译代码的时候,就会保留dllfunc的名称信息,方便其他模块调用此函数 下面是一个外部变量引入的示例:extern int g_total;//g_total是一个外部的整型变量这样编译器在编译本代码的时候,并不会...
答:这里需要注意的是,被引用的变量v的链接属性必须是外链接(external)的,也就是说a.c要引用到v,不只是取决于在a.c中声明extern int v,还取决于变量v本身是能够被引用到的。这涉及到c语言的另外一个话题--变量的作用域。能够被其他模块以extern修饰符引用到的变量通常是全局变量。还有很重要的...
答:extern "C"{ endif endif /* __cplusplus */ ……//.h文件结束的地方 ifdef __cplusplus if __cplusplus } endif endif /* __cplusplus */ </SPAN>3 问题:extern 函数1 常常见extern放在函数的前面成为函数声明的一部分,那么,C语言的关键字extern在函数的声明中起什么作用?答案与分析:如...
答:其作用域是整个源程序。在函数中使用全局变量,一般应作全局变量说明。 只有在函数内经过说明的全局变量才能使用。全局变量的说明符为extern。 但在一个函数之前定义的全局变量,在该函数内使用可不再加以说明。外部变量是在函数外部定义的全局变量,它的作用域是从变量的定义处开始,到本程序文件的结尾。...
网友评论:
蓝征19210302981:
extern "C"在C++中的作用是什么 -
2055籍乔
: extern"C"是告诉编译器,该函数采用C的编译方式,即_cdecl只是函数在obj文件中的函数名要在之前加一个"_",同时这也说明了,该函数是由调用者清理堆栈,因为函数名称中并未说明,参数大小
蓝征19210302981:
C++中定义变量的时候用extern有什么用? -
2055籍乔
: 在全局范围:int i;这是定义,定义i,初始化为0. int i = 1;这是定义,定义i,初始化为1. extern int i = 1;这是定义,定义i,初始化为1. extern int i;这是声明,声明有一个变量i,它的定义可能在其它文件中. 每个变量定义只能有一处.最好使每个变量都有且仅有一处定义. extern int i = 1;作用和int i = 1;没有区别,只是显式地提醒程序员i可能会在其它文件里用到.
蓝征19210302981:
extern "C" 的作用 -
2055籍乔
: 1)被 extern "C"限定的函数或变量是 extern 类型的;extern 是 C/C++语言中表明函数和全局变量作用范围(可见性)的关键字,该关键字告诉编译器, 其声明的函数和变量可以在本模块或其它模块中使用. (2)被 extern "C"修饰的变量和函数是按照 C 语言方式编译和连接的;
蓝征19210302981:
c++ vc++ 中的 extern 是什么意思,具体的用法 -
2055籍乔
: 是外部引用,用于在一个文件中引用在其它文件中定义的变量. 比如在文件1中 int i; 在文件2中,需include文件1,再extern int i;从而使文件1的i 也可用于在C++中引用C语言中的函数和变量extern "c"
蓝征19210302981:
c++中的extern的用法哪位知道 -
2055籍乔
: extern(外部的),若外部变量定义在它引用的数组之后,可加extern 进行说明;它还可以用来定义外部函数,静态外部变量~
蓝征19210302981:
C++中extern是什么意思,用法? -
2055籍乔
: extern表示是外部函数或外部变量,比如: 1、extern void add(int x,inty);表示该函数主体不在当前模块中,在另一个模块中(文件) 2、extern int total;表示该变量在另一个模块总定义过.
蓝征19210302981:
extern"c"{}什么含义?用在什么场合? -
2055籍乔
: extern 是对变量做“外部变量声明”,表示把该外部变量的作用域扩展到此位置.有此声明,就可以合法的使用外部变量.例如:void main(){ extern int i; //...
蓝征19210302981:
在C++程序中调用被C编译器编译后的函数,为什么要加extern “C”? -
2055籍乔
: 首先,作为extern是C/C++语言中表明函数和全局变量作用范围(可见性)的关键字,该关键字告诉编译器,其声明的函数和变量可以在本模块或其它模块中使用.通常,在模块的头文件中对本模块提供给其它模块引用的函数和全局变量以关键...
蓝征19210302981:
c语言中的extern怎么用? -
2055籍乔
: extern在c中就是个外部申明,因为C是先申明再使用,当你想调用的变量或者函数不在你的模块当中,你可以使用外部申明.在使用外部申明的时候要特别注意,因为这只是个申明,并不是实体,当出现声明和实体不符的时候,编译器是不会管...
蓝征19210302981:
c++中extern到底有什么用,始终看不明白,到底有什么用,因为不加它不也一样吗? -
2055籍乔
: 从广义的角度来讲声明中包含着定义,但是并非所有的声明都是定义,例如:inta它既是声明,同时又是定义.然而对于externa来讲它只是声明不是定义;extern的真正用途在于多文件编译链接时,用于识别使用其他文件定义的全局变量