C - поведение fork и printf [дубликаты]
На этот вопрос уже есть ответ здесь:
Почему printf не сбрасывается после вызова, если новая строка не находится в строке формата? 9 ответовТестируя функцию fork в сочетании с printf, я обнаружил странное поведение
Например, код:
int main(){
if(fork()==0){
printf("TestString");
}
}
ничего не распечатывает, пока
int main(){
if(fork()==0) {
printf("TestString\n");
}
}
распечатывает TestString правильно. Почему печать новой строки меняет поведение? Я подозреваю, что это может что-то сделать с fflush (), но я не уверен. Могу ли я получить и объяснение или ссылку, где я могу прочитать об этом? Спасибо за ответ заранее.
РЕДАКТИРОВАНИЕ: я ищу объяснение, что на самом деле является промывка и почему \ n то же самое, что промывка.