c/c++
文章平均质量分 77
FelixGe
这个作者很懒,什么都没留下…
展开
-
C++-内存管理
C++内存管理详解l 内存分配方式在C++中,内存分成5个区,分别是堆、栈、自由存储区、全局/静态区和常量存储区.栈:存放函数参数以及局部变量,在出作用域时,将自动被释放.栈内存分配运算内置于处理器的指令集中,效率很高,但分配的内存容量有限.堆:new分配的内存块(包括数组,类实例等),需delete手动释放.如果未释放,在整个程序结束后,OS会帮你回收掉.自由存储区:malloc分配的内存块,需free手动释放.它和堆有些相似.全局/静态区:全局变量(global)和静态变量(stati转载 2011-03-25 17:03:00 · 245 阅读 · 0 评论 -
extern linux用法详解
1 基本解释 extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。当然在本文件中也可以使用extern声明这些,这样可以提示编程人员理解这是个为外部引用的变量或者函数。 另外,extern也可用来进行链接指定。 2 问题:extern 变量 在一个源文件里定义了一个数组:char a[6]; 在另外转载 2012-06-13 23:11:23 · 700 阅读 · 0 评论 -
Linux编译选项&静态库和动态库
GCC编译器编译选项: -c 仅执行预处理、编译和汇编,生成可定位目标文件。 -S 仅执行预处理和编译,生成汇编文件。 -E 仅执行预处理,预处理结果输出至标准输出。 -ansi 关闭GNU C中和ANSI C不兼容的语法特征。 -Dmacro 相当于C语言中的#define macro,常见的是打开调试-DDEBUG和打开可重入标志-D_REENTRANT,编译内核模块-DMODULE原创 2012-06-13 23:16:18 · 1638 阅读 · 0 评论