摘要: 1、内存分配方式内存分配方式有三种:(1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。(2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。(3) 从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期由我们决定,使用非常灵活,但问题也最多。2、常见的内存错误及其对策发生内存错误是件 阅读全文
posted @ 2011-03-08 20:53 glose 阅读(313) 评论(0) 推荐(0) 编辑
摘要: 1、关于 extern "C"的作用:这个问题答案简而言之就是解决 C与C++的兼容问题。限于篇幅,详细解释请见:http://www.dutor.net/index.php/2010/09/extern-c/2、说出这段程序的执行结果及其原因:char *p = "hello";char a[] = "world";p[0] = "H";a[0]="W";大多数人都受到当年C语言课老师的教导,认为数组名和指针没区别,这段程序看上去貌似也挺对的,可是实际运行结果却是 Run time error 阅读全文
posted @ 2011-03-08 19:34 glose 阅读(305) 评论(0) 推荐(0) 编辑