Namespaces
Variants

std::basic_ios<CharT,Traits>:: bad

From cppreference.net
bool bad ( ) const ;

Gibt true zurück, wenn ein nicht behebbarer Fehler im zugehörigen Stream aufgetreten ist. Genauer gesagt wird true zurückgegeben, wenn badbit in rdstate ( ) gesetzt ist.

Siehe ios_base::iostate für die Liste der Bedingungen, die badbit setzen.

Inhaltsverzeichnis

Parameter

(keine)

Rückgabewert

true wenn ein nicht behebbarer Fehler aufgetreten ist, false andernfalls.

Beispiel

#include <cstdlib>
#include <fstream>
#include <iostream>
int main()
{
    std::ifstream file("test.txt");
    if (!file) // operator! is used here
    {  
        std::cout << "Dateiöffnung fehlgeschlagen\n";
        return EXIT_FAILURE;
    }
    // typical C++ I/O loop uses the return value of the I/O function
    // as the loop controlling condition, operator bool() is used here
    for (int n; file >> n;)
       std::cout << n << ' ';
    std::cout << '\n';
    if (file.bad())
        std::cout << "E/A-Fehler beim Lesen\n";
    else if (file.eof())
        std::cout << "Dateiende erfolgreich erreicht\n";
    else if (file.fail())
        std::cout << "Nicht-ganzzahlige Daten gefunden\n";
}

Siehe auch

Die folgende Tabelle zeigt die Werte der basic_ios Accessoren ( good() , fail() , etc.) für alle möglichen Kombinationen der ios_base::iostate Flags:

ios_base::iostate Flags basic_ios Accessoren
eofbit failbit badbit good() fail() bad() eof() operator bool operator!
false false false true false false false true false
false false true false true true false false true
false true false false true false false false true
falsch wahr wahr falsch wahr wahr falsch falsch wahr
wahr falsch falsch falsch falsch falsch wahr wahr falsch
wahr falsch wahr falsch wahr wahr wahr falsch wahr
wahr wahr falsch falsch wahr falsch wahr falsch wahr
wahr wahr wahr falsch wahr wahr wahr falsch wahr