用gcc的请进来看看,这段程序太叫我郁闷了!!!!
chl 2003-12-19 05:00:50 #include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char *argv[])
{
char str[]={"xyz"},str1[]="abc",str2[]="efg";
char *p;//***
char *s;//***
p=str;
strcpy(s,p);
printf("%s,%s",s,p);
printf("\r\n%d,%d",s,p);
printf("\r\nlen:%d",strlen(p));
system("PAUSE");
return 0;
}
就这段小小的C程序,把声明*p和*s的顺序调转编译运行会有很不同的效果,一个正常,一个出错,
我在win2k,linux的gcc都试过了,你试试。