关于输入输出流的讨论
2008-01-19 11:45
239 查看
今天看了下C++中的流,试着编写了程序如下:
#include <fstream>
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
ifstream ii_st;
ofstream oo_st;
int fri_data,sec_data,thi_data,i1,i2,i3;
// char s_data,s3;
fri_data=111;
sec_data=222;
thi_data=333;
//s_data='a';
oo_st.open("test.data",ios::app); ios::app的作用是在已有的数据后追加数据,否则就会重头重写数据
if(oo_st.fail())
{
cout << "the output is fail";
exit(1);
}
oo_st << fri_data << "/n"<< sec_data << "/n" << thi_data <<"/n" ;
oo_st.close();
ii_st.open("test.data");
if (ii_st.fail())
{
cout << "the input is fail";
exit(1);
}
ii_st >> i1 >> i2 >> i3;
cout << i1 << i2 << i3;
ii_st.close();
}
开始时的程序中向文件中输出数据时用的语句为oo_st << fri_data << sec_data << thi_data ;既没有换行符,运行的结果如下111222-1073749412,并且最后五位每次运行后的结果都不一样,在向如上程序那样输入每行后加入换行符后,即可输出正确结果。
原因在于从文件中读入数据和从键盘中读入数据的原理是一样的,即要让计算机知道每个数据在什么时候结束。程序在从键盘中读数据的时候几个不同的数据之间要用分隔符分离,如空格,Tab和换行符等,因此在从文件中读入数据的时候,文件中的数据也要有明确的分隔符分离。如果输入和输出是同一个文件就要求输入文件数据数据的时候数据之间要有分隔符。
#include <fstream>
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
ifstream ii_st;
ofstream oo_st;
int fri_data,sec_data,thi_data,i1,i2,i3;
// char s_data,s3;
fri_data=111;
sec_data=222;
thi_data=333;
//s_data='a';
oo_st.open("test.data",ios::app); ios::app的作用是在已有的数据后追加数据,否则就会重头重写数据
if(oo_st.fail())
{
cout << "the output is fail";
exit(1);
}
oo_st << fri_data << "/n"<< sec_data << "/n" << thi_data <<"/n" ;
oo_st.close();
ii_st.open("test.data");
if (ii_st.fail())
{
cout << "the input is fail";
exit(1);
}
ii_st >> i1 >> i2 >> i3;
cout << i1 << i2 << i3;
ii_st.close();
}
开始时的程序中向文件中输出数据时用的语句为oo_st << fri_data << sec_data << thi_data ;既没有换行符,运行的结果如下111222-1073749412,并且最后五位每次运行后的结果都不一样,在向如上程序那样输入每行后加入换行符后,即可输出正确结果。
原因在于从文件中读入数据和从键盘中读入数据的原理是一样的,即要让计算机知道每个数据在什么时候结束。程序在从键盘中读数据的时候几个不同的数据之间要用分隔符分离,如空格,Tab和换行符等,因此在从文件中读入数据的时候,文件中的数据也要有明确的分隔符分离。如果输入和输出是同一个文件就要求输入文件数据数据的时候数据之间要有分隔符。
相关文章推荐
- C++ 关于标准输入输出流 20180317 day8
- 群里关于 CEikEdwin 的输入中文的讨论(symbian )
- C语言学习趣事_关于C语言中的输入输出流_续一
- 关于C++ 输入输出流状态控制
- 关于IO流的输入输出流同时存在应如何处理异常?
- 关于try-with-resource的 输入输出流自动关闭
- 关于ObjectOutputStream和ObjectInputStream类的文件的输入输出流操作的心得
- 【JAVA】【问题】关于数据流,输入输出流
- C++对象是怎么死的?关于标准输入输出流(cout,cerr,clog,etc)的进一步探讨
- 关于类模板重载输入输出流的思考
- java 输入输出流 关于InputStream 和 OutputSteam 实现文本一行一行读入和 文本一行一行输出
- 关于Java的输入输出流(InputString,OutputString)
- 关于FileReader和FileWriter 输入输出流的总结
- C++ 关于输入输出流的头文件引用
- 一些关于标准输入输出流的控制符的知识
- 关于socket的套接字中输入输出流的理解
- 关于输入输出流的学习总结
- IO流,关于File类的一些;以及输入输出流 整理
- C#关于输入输出流的知识点
- java关于输入输出流的转换