|
今晚在做数据结构的题时发现了一个很奇怪的现象:做返回逆波兰式那道题的时候...(下面是简化版)
.....
char *e,*p;
while(*e!='\0')
{*p++=*e;
}
*p='\0';
.....
return p;....
但是上机运行是什么不输出...
而以下就可以:
char *e,*p;int i;(注意了i是不赋初值的!)
while(*e!='\0')
{*(p+i)=*e;i++;
}
*(p+i)='\0';
....
return p;....
我茫然....将i随便赋初值后居然还是没东西输出,不赋初值才正确!
我很晕... 希望高手指点..... |
|