问题及代码:
/*
*Copyright (c) 2015,烟台大学计算机学院
*All rights reserved.
*文件名称:test.cpp
*作者:吴胜男
*完成日期:2015年06月19日
*版本号:v1.0
*
*问题描述:1、阅读并运行下面的两个程序,分别用记事本和二进制文件阅读器(请自行下载Binary Viewer等程序,或者用DOS中的Debug程序,并百度其用法)。
查看其内容,并理解文件存储的原理。
*输入描述:略
*程序输出:略
*/
#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;
int main( )
{
int a;
ofstream outfile("f1.dat",ios::out);
if(!outfile)
{
cerr<<"open error!"<<endl;
exit(1);
}
cin>>a;
outfile<<a<<endl;
outfile.close();
return 0;
}
运行结果:
知识点总结:文件是以二进制形式存储的,键盘输入的是十进制,在记事本中显示的是十进制。
学习心得:还是有点绕。
#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;
int main( )
{
int a;
ofstream outfile("f2.dat",ios::out|ios::binary);
if(!outfile)
{
cerr<<"open error!"<<endl;
exit(1);
}
cin>>a;
outfile.write((char*)&a, sizeof(int));
outfile.close();
return 0;
}
运行结果:
总结:以二进制格式写入文件。