首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

fread 的奇怪有关问题

2012-04-22 
fread的奇怪问题structstu{intnum}int_tmain(intargc,_TCHAR*argv[]){FILE*fpfpfopen( list , wt+

fread 的奇怪问题
struct   stu
{
int   num;
};

int   _tmain(int   argc,   _TCHAR*   argv[])
{
FILE   *fp;
fp   =   fopen( "list ", "wt+ ");//可读写,文本文件

for(int   i   =   0;   i   <   30;   i++)
{
stu   a;
a.num   =   i;

size_t   t   =   fwrite(&a,sizeof(struct   stu),1,fp);
}

fclose(fp);

fp   =   fopen( "list ", "r ");//读

for(int   i   =   0;   i   <   30;   i++)
{
stu   a;
fread(&a,sizeof(int),1,fp);

printf( "%d\n ",   a.num);
}

fclose(fp);

return   0;
}

过程非常简单
1、定义一个结构,其中只有一个整型成员
2、写30个
3、读30个。

本来预期读出1至30,但实际读到25就不对了,剩下都是25了。

大家有没有遇到类似的问题?

[解决办法]
读的时候也须用fread(&a,sizeof(struct stu),1,fp);

热点排行