为什么数值丢失了?
itlcx 2006-03-24 11:31:20 下面是我碰到的问题,想了很久,不得其解:
int main(int argc, char* argv[])
{
char *n[5];
char Str[20];
int i;
for (i=0;i<5;i++)
{
sprintf(Str,"%d",i);
n[i]=Str;
printf(n[i]);
printf("\n");
}
printf("\\\\\\\\\\\\\\\\\\\n");
for (i=0;i<5;i++)
{
printf(n[i]);
printf("\n");
}
return 0;
}
输出的结果是:
0
1
2
3
4
\\\\\\\\\\\\\\\\\
4
4
4
4
4
为什么n[0],n[1],n[2],n[3]原来的值都变成了n[4]的值?谢谢!