关于一个运行问题的讨论
#include <stdio.h>void reverse_string (char *str)
{
char *last_char;
for(last_char=str;*last_char!='\0';last_char++)
;
last_char--;
while(str<last_char)
{
char temp;
temp=*str;
*str++=*last_char;
*last_char--=temp;
}
}
int main()
{
char *p="hello";
printf("the original string is: %s\n",p);
reverse_string(p);
printf("the reverse string is: %s\n",p);
return 0;
}
这个程序在linux下和vc++6.0下运行都会出现错误,但是在Win-TC下却可以通过,为什么??怎么改进啊??