Ifstream - Сбросить бит EOF

Я работаю с ifstream. Я читаю до тех пор, пока не будет установлен бит EOF (мне так нужно).

Почему бы тогда не работать следующим образом:

// IN is ifstream file. CH is char.

if (IN.eof()) {
    IN.seekg(ios::beg);
    IN.clear();

    if (read((char*)&CH, sizeof(CH)))
        cout << "Succes.";
    else
        cout << "Not S.";    
}

Функция readникогда не срабатывает. Я также пытаюсь использовать IN.setstate(ifstream::goodbit)вместо IN.clear(). Но это то же самое, я прав?

7
задан 0x499602D2 13 January 2014 в 00:19
поделиться