Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说C++中的IO流[通俗易懂],希望能够帮助你!!!。
char ch = cin.get();// 一次读取一个字符,如果遇到EOF则结束。
cin.getline(buf, length);// 一次读取一行数据,包含空格,默认的cin>>是不包含空格的。
cin.getline(buf, length, '\n');//一次读取一行数据,包括空格,回车键结束
代码演示:
#include <iostream>
using namespace std;
int main()
{
/*cin.get()获取一个字符*/
char ch = ' ';
cout << "输入字符: " << endl;
while ((ch = cin.get()) != '\n')
{
cout << ch;
}
cout << endl;
/*cin.getline:获取输入的一行数据,遇到空格也会接收进来,与cin不同,cin的>>遇到空格停止*/
char buffer[256];
cout << "输入buffer内容: " << endl;
cin.getline(buffer, 256, '\n');
cout << buffer << endl;
cout << "cin>>输入:" << endl;
cin >> buffer;
cout << buffer << endl;
/*cin的缓冲区测试:第一次空格全面是cin>>读取的,第一个空格后面是cin.getline()读取的*/
char buf1[256] = " ";
char buf2[256] = " ";
cout << "输入buf1: " << endl;
cin >> buf1;
cout << buf1 << endl;
cin.getline(buf2, 256);
cout << buf2 << endl;
return 0;
}
cout.put(char);// 输出一个基本数据类型,支持链式编程。
cout.write(char *,length);// 输出一个指定长度的字符串。
代码演示:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
cout.put('A').put('B').put('C').put('\n');
cout.write("HelloWorld\n", 20);
return 0;
}
open(fileName,mode);// 以指定方式打开文件,但是平时我们是直接在构造方法中这样打开
close();// 关闭文件
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
cout << "Please Enter Code: " << endl;
char buffer[256] = " ";
/*获取一行数据*/
cin.getline(buffer, 256);
/*定义输出文件流,并输出方式打开该文件*/
ofstream out("a.dat", ios::out);
/*通过文件输出流将控制台数据输入到文件中*/
out << buffer;
/*关闭文件*/
out.close();
return 0;
}
文件输入流(头文件在fstream)
open(fileName,mode);// 以指定方式打开文件,但是平时我们是直接在构造方法中这样打开
close();// 关闭文件
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream inFile("a.dat", ios::in);
char ch = ' ';
while (inFile.get(ch))
{
cout << ch;
}
/*关闭文件*/
inFile.close();
return 0;
}
上一篇
已是最后文章
下一篇
已是最新文章