Я тестировал очень простую программу, написанную на C, полная часть которой приведена ниже.После попытки выполнить исполняемый файл, созданный TCC, я заметил, что мне нужно было вводить ввод для каждого последующего вызова fgets () до фактического просмотра вывода из любых вызовов printf ().
Это очень сбивало с толку, поэтому ярешил попробовать запустить исполняемый файл на стандартной консоли Windows.Он работал безупречно, а подсказки ввода и вывода отображались в правильном порядке.
Однако я заметил, что если я скомпилирую программу с GCC, она будет работать нормально на терминале, скомпилированном в Cygwin (mintty, хотя я получилте же самые результаты с rxvt).
Может ли кто-нибудь объяснить, почему это происходит, и как я могу остановить это?Я хотел бы компилировать свои программы независимо от Cygwin, все еще используя терминал на основе Cygwin.
Спасибо!
int main()
{
char something[12];
printf("This printf() should be outputted before you are prompted for input: ");
fgets(something, sizeof something, stdin);
printf("You entered, %s", something);
}