关于short在结构体中的问题
#include<stdio.h>#include<stdlib.h>
#include<string.h>
struct Users
{
char number[17];
char name[14];
char password[10];
short mark;
};
void oaccount()
{
struct Users a;
struct Users *p;
p=&a;
FILE *fp;
fp=fopen("D:\\新建文件夹\\file.txt","w");
scanf("%s%s%s%d",a.number,a.name,a.password,&a.mark);
fwrite(p,sizeof(struct Users),1,fp);
fclose(fp);
printf("\nYSE");
}
void main()
{
oaccount();
//printf("\nok");
}
此程序出现问题。问题在输入mark时。如果把short改成int,就可以。或者在定义一个struct Users b;,单独输入b.mark就可以。
[此贴子已经被作者于2017-3-8 11:11编辑过]