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 то же самое, что промывка.

Ответы на вопрос(1)

Ваш ответ на вопрос