摘要: C++内存管理1.内存分配方式 在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。栈:在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限堆:就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收自由存储区:就是那些由malloc等分配的内存块,他和堆是十分相似的,不过它是用free来结束自己的生命的。全局/静态存储区:全局. 阅读全文
posted @ 2013-09-08 15:44 野原新之助 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 1.腾讯2013:signed char a=0xe0;unsigned int b=a;unsigned char c=a;下面说法正确的是: A (a>0 )&&(b>0)为真 B c==a 为真 C b的16进制为0xffffffe0 D 都不对 答案:C 整形比较小于int的会扩宽的int再比较, 而有符号数扩宽填充符号位, 无符号数填充0, 导致扩宽后两个整形的二进制不再相等, 选择C.2.腾讯2013:int main(){ long long a=1; long long b=2; long long c=3; printf("%d,%d,% 阅读全文
posted @ 2013-09-08 11:22 野原新之助 阅读(586) 评论(0) 推荐(0) 编辑