摘要: 1、简介 extern "C" 包含双重含义,从字面上即可得到:首先,被它修饰的目标是“extern”的;其次,被它修饰的目标是“C”的。2、含义(1) 被extern "C"限定的函数或变量是extern类型的; extern是C/C++语言中表明函数和全局变量作用范围(可见性)的关键字,该关键字告诉编译器,其声明的函数和变量可以在本模块或其它模块中使用。 extern int a; 仅仅是一个变量的声明,其并不是在定义变量a,并未为a分配内存空间。变量a在所有模块中作为一种全局变量只能被定义一次,否则会出现连接错误。 通常,在模块的头文件中对本模块提 阅读全文
posted @ 2013-07-23 01:06 天心程序圆 阅读(197) 评论(0) 推荐(0)
摘要: 一、面向过程的static1、静态全局变量 静态全局变量在全局数据区分配;自动初始化为0;只在该文件可见。 1 #include<iostream> 2 using namespace std; 3 4 /** 5 *file: static_global_val.cpp 6 * **/ 7 8 static int n; //定义静态全局变量 9 10 void f() 11 { 12 n++; 13 cout << n << endl; 14 } 15 16 int main() 17 { 18 n = 10; 19... 阅读全文
posted @ 2013-04-25 12:05 天心程序圆 阅读(127) 评论(0) 推荐(0)
摘要: const和指针之间有两种修饰关系,一种是const用来修饰指针本身----const指针,另一种是const修饰指针指向的对象----指向const对象的指针。 1、const指针 首先介绍const指针,即上述第一种情况,const用来修饰指针本身,只是限定该指针的内容不可以被修改,而指针所指向的对象则不加以限制。 只有一种用法: int a; int * const p = &a; (可理解为:p为一个指向int型的指针,该指针为const) //因为指针的值不可以被修改,所以必须被初始化 2、指向const对象的指针 const用来... 阅读全文
posted @ 2013-04-14 01:26 天心程序圆 阅读(326) 评论(0) 推荐(0)