◐ Shell
clean mode source ↗

std::basic_ios::bad - cppreference.com

De cppreference.com

<metanoindex/>

<tbody> </tbody>

Retorna true se não recuperável Erro no fluxo associado. Especificamente, os retornos true se badbit é definido em rdstate().

Original:

Returns true if non-recoverable error has occurred on the associated stream. Specifically, returns true if badbit is set in rdstate().

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

A biblioteca padrão define badbit nas seguintes situações:

Original:

The standard library sets badbit in the following situations:

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

  • Inserção no fluxo de saída por colocar () ou write () falhar por qualquer motivo.

    Original:

    Insertion into the output stream by put() or write() fails for any reason.

    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.

  • Inserção no fluxo de saída por operador. <<, std::put_money ou std::put_time, não foi possível concluir, porque o final do fluxo de saída foi alcançado (função A faceta de saída de formatação como

    num_put::put()

    ou

    money_put::put()

    , devolve uma iteração tal que iter iter.failed()==true)

    Original:

    Insertion into the output stream by operador. <<, std::put_money or std::put_time, could not complete because the end of the output stream was reached (The facet's formatting output function such as

    num_put::put()

    or

    money_put::put()

    , returns an iterator iter such that iter.failed()==true)

    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.

  • Fluxo é construído com um ponteiro nulo para rdbuf (), ou putback () / unget () é chamado em um riacho com um rdbuf nula (), ou um ponteiro nulo passado para operador << (* basic_streambuf)

    Original:

    Stream is constructed with a null pointer for rdbuf(), or putback()/unget() is called on a stream with a null rdbuf(), or a null pointer passed to operator<<(basic_streambuf*)

    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.

  • rdbuf () -> sputbackc () ou rdbuf () - Retorna> sungetc () traços :: EOF () para putback () ou unget ()

    Original:

    rdbuf()->sputbackc() or rdbuf()->sungetc() return traits::eof() to putback() or unget()

    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.

  • rdbuf () -> pubsync () retorna -1 para sincronizar (), para flush (), ou o destruidor de ostream :: sentinela em um córrego unitbuf

    Original:

    rdbuf()->pubsync() returns -1 to sync(), to flush(), or to the destructor of ostream::sentry on a unitbuf stream

    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.

  • Exceção é lançada durante uma operação de I / O por qualquer função de membro do buffer de fluxo associado (por exemplo sbumpc (), xsputn (), sgetc (), overflow (), etc.)

    Original:

    Exception is thrown during an I/O operation by any member function of the associated stream buffer (e.g. sbumpc(), xsputn(), sgetc(), overflow(), etc)

    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.

  • Exceção é lançada em iword () ou pword () (por exemplo, std :: bad_alloc)

    Original:

    Exception is thrown in iword() or pword() (e.g. std::bad_alloc)

    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.

Parâmetros

(Nenhum)

Original:

(none)

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Valor de retorno

true se um erro não-recuperável ocorreu, false outra forma.

Original:

true if a non-recoverable error has occurred, false otherwise.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Exemplo

#include <iostream>
#include <fstream>
#include <cstdlib>
int main()
{
    std::ifstream file("test.txt");
    if(!file)  // operator! is used here
    {  
        std::cout << "File opening failed\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 << "I/O error while reading\n";
    else if (file.eof())
        std::cout << "End of file reached successfully\n";
    else if (file.fail())
        std::cout << "Non-integer data encountered\n";
}

Veja também

ios_base::iostate flags basic_ios accessors
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
false true true false true true false false true
true false false false false false true true false
true false true false true true true false true
true true false false true false true false true
true true true false true true true false true