c语言中什么情况下值能返回到主函数

如题所述

这个函数返回的是一个地址,不能作为左值
比如你在windows下编程,函数返回值存放在eax寄存器中
那么回到main函数的时候eax里存放的就是whw函数返回的一个地址的值,假设为0xffffffff
想象一下,0xffffffff = 5是几个意思,就类似于表达式15 = 5
退一步讲whw返回的是一个int*类型,怎么能赋个5

就类似
int *p = 5; 也会出错
如果要编译不出错
可以改成这样

int* whw(int* a);

main()
{
int p=12;
*(whw(&p))=5;
printf("*whw(&p)=%d\n",*(whw(&p)));
return 0;
}

int* whw(int* a)
{
return a;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-08-30
什么叫返回到主函数?从头到尾都是在主函数里面运行啊
相似回答