2008年9月25日c语言内存分配:C语言内存使用
有人写了一个将整数转换为字符串的函数:char *itoa (int n){ char retbuf[20]; sprintf(retbuf, \"%d\", n); return retbuf;} 如果我调用这个函数:char *str5 = itoa(5),str5会是什么结果呢? 答案分析: 答案是不确定,可以确定的是肯定不是我们想要的 “5”。 retbuf定义在函数体中,是一个局部变量,它的内存空间位于栈(stack)中的某个位置,其作用范围也仅限于在itoa()这个函数中。当itoa()函数退出时,retbuf在调用栈中的内容将被收回...
[阅读全文] [PDF]
1 共1条 分1页