#include
#include
struct Process
{
char name[5];
int again;
int serve;
char state;
struct Process *next;
};
void Set(struct Process *L)
{
struct Process Demo;
L=&Demo;
printf("%p\n",L);
}
int main(void)
{
struct Process *L=NULL;
Set(L);
if(L)
{
printf("函数结束,空间释放!\n");
printf("%p\n",L);
}
else
printf("L地址为NULL\n");
return 0;
}
程序的运行结果为:
0000000000FDF0
L的地址为NULL
在这个程序中,我在main函数中声明了*L指针,本来打算在Set()函数中把L的地址改为Demo结构体变量的地址,可是程序的运行结果不对呀!怎么回事?求详解分析下!
只有1个币了,只能这次酬谢这么多了!谢谢呐!