【发布时间】:2014-01-05 17:01:45
【问题描述】:
这是源代码
#include <stdio.h>
#include <stdlib.h>
int *fun();
int main()
{
int *j;
j=fun();
printf("%d\n",*j);
printf("%d\n",*j);
return 0;
}
int *fun()
{
int k=35;
return &k;
}
输出-
35
1637778
第一个 printf() 打印出 35,这是 k 的值,但是
在 main() 中,第二个 printf 打印一个垃圾值而不是打印 35。为什么?
【问题讨论】: