摘要:
先看以下代码:char *p;p="abc";你认为是对的吗?答案:语法上是对的,但不提倡这种写法。误区1:没有给p分配内存空间就赋值,怎么会是对的呢?正解:不少人第一眼将这里的p="abc"看成了*p="abc",然后就做出了以上的论断。这是比较笨笨的错误咯:)看清楚就好啦,其实赋给p的是"abc"的地址。再说,*p="abc"也不对呀,字符串可不能这么赋值。误区2:这"abcd"哪来的地址,怎么能直接赋给p呢?正解:先自己试试吧。在2K/XP + VC下运行这段代码,是不 阅读全文
posted @ 2012-12-04 23:48
Samurail
阅读(494)
评论(0)
推荐(0)
摘要:
本文来自:http://blog.csdn.net/chenke1988/article/details/7273375一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放 , 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。 3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变 阅读全文
posted @ 2012-12-04 23:42
Samurail
阅读(393)
评论(0)
推荐(0)

浙公网安备 33010602011771号