使用VC++写C程序时遇到一个不明白的问题
熬夜王者 2005-04-01 03:18:34 为什么超出下标了还是正常~~而当超出一定范围了就又不正常了???
#include<stdio.h>
void main()
{
char x[5];
scanf("%s",x); /*输入12345678正常,输入123456789错误(出现调试窗口)*/
printf("%c,%c,%c,%c,%c,%c,%c,%c\n",x[0],x[1],x[2],x[3],x[4],x[5],x[6],x[7]);
printf("%d,%d,%d,%d,%d,%d,%d,%d\n",x[0],x[1],x[2],x[3],x[4],x[5],x[6],x[7]);
printf("%d,%d,%d,%d,%d,%d,%d,%d\n",x,x+1,x+2,x+3,x+4,x+5,x+6,x+7);
/*以下以下字符串经过测试:
x[5]改成x[2],允许输入1234。 4个字符
x[5]改成x[9],允许输入123456789012。 12个字符
x[5]改成x[8],瞒好~正常了允许输入12345678。 8个字符
*/
}