Размышление о UNIX, Windows и Mac и выходном потоке (как двоичном, так и текстовом),
Что означает std::endl, т.е. <CR><LF>, <LF> или <CR>? Или это всегда одно и то же независимо от платформы/компилятора?
Причина, по которой я спрашиваю, заключается в том, что я пишу TCP-клиент, который говорит о протоколе, который ожидает, что каждая команда закончится в <CR><LF>. Поэтому мне интересно, использовать ли в моих потоках std::endl или "\r\n".
EDIT: Хорошо, поэтому один сброс буфера, а другой нет. Я понимаю. Но если я выводя текст в файл, '\n' равно <LF> или он преобразуется в <CR><LF> в Windows и <LF> в Unix или нет? Я пока не вижу ясного ответа.