温馨提示×

C++中怎么检查文件流是否达到EOF

c++
小亿
82
2024-04-18 10:44:05
栏目: 编程语言

在C++中,可以使用文件流对象的eof()函数来检查文件流是否达到EOF(文件末尾)。eof()函数返回一个bool值,表示文件流是否已经到达文件末尾。

示例代码如下:

#include <iostream>
#include <fstream>

int main() {
    std::ifstream file("example.txt");

    if (!file.is_open()) {
        std::cout << "Error opening file" << std::endl;
        return 1;
    }

    char c;
    while (!file.eof()) {
        file.get(c);
        if (!file.eof()) {
            std::cout << c;
        }
    }

    file.close();

    return 0;
}

在上面的示例中,首先打开一个文件example.txt,然后使用while循环读取文件中的内容,直到文件流到达EOF。在循环中,我们使用file.get(c)来逐个字符读取文件内容,并在每次读取之前都检查文件流是否已经到达EOF,以避免读取文件末尾之后的无效字符。

0