|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
如图,不知道为什么,修改一个值后,下一项的值就会变成0,求解。。。。
附上源代码:
struct rec
{
short score[3];
}text;
text.score[0] = 4;
text.score[1] = 2;
text.score[2] = 3;
printf("输入三个值后的结果\n\n");
printf("%d \n",text.score[0]);
printf("%d \n",text.score[1]);
printf("%d \n",text.score[2]);
//-------------------------------
printf("********************************************************************\n\n");
scanf("%d",&text.score[0]);
printf("改变score[0]后的结果\n\n");
printf("%d \n",text.score[0]);
printf("%d \n",text.score[1]);
printf("%d \n",text.score[2]);
运行结果:
输入三个值后的结果
4
2
3
********************************************************************
1
改变score[0]后的结果
1
0
3
Press any key to continue
%d是输入int型的,int一般占用字节比short多,所以就把数组的下一位给占用了,输入short型要用%hd
|
|