与输入输出流操作相关的类

image.png
image.png

标准流对象

image.png
image.png

输出重定向

  1. #include <iostream>
  2. using namespace std;
  3. void main() {
  4. int x, y;
  5. cin >> x >> y;
  6. freopen("test.txt", "w", stdout); // 将标准输入输出重定向到test.txt文件
  7. if(y == 0) // 如果除数是零,则在屏幕上打印错误信息
  8. cerr << "error." << endl; // 否则将结果写入文件中
  9. else
  10. cout << x / y;
  11. }
  • 重定向后,我们可以将调试信息打印到屏幕上,而有用的信息写入文件,而不会将调试信息也写入文件

    输入重定向

    1. #include <iostream>
    2. using namespace std;
    3. void main() {
    4. double f; int n;
    5. freopen("t.txt", "r", stdin);
    6. cin >> f >> n;
    7. cout << f << "," << n << endl;
    8. }

    判断输入流结束

    image.png

    istream类的成员函数

    image.png
    image.png
    1. #include <iostream>
    2. using namespace std;
    3. void main()
    4. {
    5. int x;
    6. char buf[100];
    7. cin >> x;
    8. cin.getline(buf, 90);
    9. cout << buf << endl;
    10. }
    image.png