l7890 2016-10-21 11:05 采纳率: 0%
浏览 1287

c++的这个将一批数据以二进制形式存放在磁盘文件中的程序运行后打开生成的文件是乱码显示,哪里出错了?

#include
#include
using namespace std;
struct student
{
char name[20];
int num;
int age;
char sex;
};
int main()
{
student stud[3] = { "Li", 1001, 18, 'f', "Fang", 1002, 19, 'm', "Wang", 1004, 17, 'f' };
ofstream outfile("stud.dat", ios::binary);
if (!outfile)
{
cerr << "open error!" << endl;
abort();
}
for (int i = 0; i < 3; i++)
outfile.write((char*)&stud[i], sizeof(stud[i]));
outfile.close();
return 0;
}

  • 写回答

1条回答 默认 最新

  • threenewbee 2016-10-21 15:12
    关注

    二进制本身就是不可读的。这是正常现象,要看里面的内容,需要用ultraedit

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 MATLAB动图问题
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名