标题:关于short在结构体中的问题
只看楼主
育帝
Rank: 2
来 自:黑龙江哈尔滨
等 级:论坛游民
帖 子:75
专家分:43
注 册:2016-10-16
结帖率:87.5%
已结贴  问题点数:20 回复次数:1 
关于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编辑过]

2017-03-08 10:56
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:20 
short 对应的是 %hd
2017-03-08 11:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-474850-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.045700 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved