Здравствуйте Гомон Игорь Викторович
ГИВ>Так вот проблема в том, что я хочу чтобы при записи в поток числа 1 и 0 записывались именно как два числа типа long, т.е. по четыре байта, а они записываются как текст. (Я открывал файл Notepadom и смотрел там "10"). Как мне записать их в поток правильно, чтобы я мог их считать? Зачем же тогда режим ios_base::binary и чем он отличается от простого текстового режима?
binary | text — отличаются тем, что text интерпретирует перевод строки.
Т.е. одиночный LF ('\n', endl) приводится к стандарту операционной системы.
Под Dos|Windows это CR-LF ("\r\n"), под *nix — одиночный LF.
Это не блажь авторов STL: потоки — это обертка к функциям fopen, fprintf и т.п.
Если нужно выводить бинарные данные — пользуйтесь неформатированным выводом (методом write).