U201017971 2016-01-26 02:57 采纳率: 0%
浏览 1712

C语言,文件操作问题,fwrite函数的使用

 #include <stdio.h>
#include <stdlib.h>
#pragma warning(disable:4996)//

#define NULL 0
#define SIZE 2
struct student
{
    char name[10];
    int num;
    int age;
}stud[SIZE];

void save()
{
    FILE *fp;
    int i;
    if((fp=fopen("stulist.txt","wb"))==NULL)
    {printf("cannot open the file stulist\n");exit(0);}
    for(i=0;i<SIZE;i++)
        if(fwrite(&stud[i],sizeof(struct student),1,fp)!=1)printf("error\n");
    fclose(fp);
}
 void main(int argc,char *argv[])
{   
int i=0;
while(i<SIZE)
{
    scanf("%s%d%d",&stud[i].name,&stud[i].age,&stud[i].num);
    i++;
}
save();
}

上述从终端输入以后,在文件中是一堆乱码,跟终端输入的不一致,请问是哪个地出问题了啊。

  • 写回答

3条回答 默认 最新

  • 微型蚂蚁 2016-01-26 03:07
    关注

    2进制写入当然是乱码,但是name应该还是能看到的。

    评论

报告相同问题?

悬赏问题

  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?