iostream的使用方法和高级用法

发布时间 2023-04-22 15:45:49作者: linux星

iostream是C++中非常重要的一个标准库,通过iostream可以实现从标准输入输出设备(键盘和屏幕)或文件进行输入输出。

iostream库包含两个基本类:

istream和ostream,分别代表输入流和输出流。

iostream的使用方法:

#include<iostream>
using namespace std;
int main() {
    int num;
    cout << "请输入一个整数" << endl;
    cin >> num;
    cout << "您输入的整数是:" << num << endl;
    return 0;
}

上述程序演示了iostream最基本的输入输出功能。

其中,cout代表输出流对象,<<为输出运算符,endl为换行符;

cin代表输入流对象,>>为输入运算符。

iostream的高级用法:

#include<iostream>
#include<fstream>
using namespace std;
int main() {
    // 文件输出
    ofstream out("file.txt");
    out << "hello world!" << endl;
    out.close();
    // 文件输入
    ifstream in("file.txt");
    string str;
    in >> str;
    cout << str << endl;
    in.close();
    return 0;
}

上述程序演示了如何使用iostream进行文件输入输出。

其中,ofstream代表输出流对象,ifstream代表输入流对象,可以通过构造函数指定文件名进行文件的输入输出。 

格式化输出:

#include<iostream>
#include<iomanip>
using namespace std;
int main() {
    double num = 3.141592653589793;
    cout << setiosflags(ios::fixed) << setprecision(5) << num << endl;
    return 0;
}

上述程序演示了如何使用iostream进行格式化输出。其中,setiosflags(ios::fixed)表示使用定点数格式进行输出,setprecision(5)表示保留小数点后5位。

流的控制:

#include<iostream>
using namespace std;
int main() {
    cout << "hello" << flush; // 刷新缓冲区,但不输出换行符
    cout << "world" << ends; // 输出空格并刷新缓冲区
    return 0;
}

上述程序演示了如何使用iostream进行流的控制。

其中,flush表示刷新缓冲区,但不输出换行符;ends表示输出空格并刷新缓冲区。