Почему-то я думал, что вы используете C ++. Следующее применимо, если вы.
Если вы используете многопоточность и fstream IO и пользовательские потоковые буферы или отключили sync_with_stdio, то да, iostreams C ++ будут работать иначе, чем iostreams в Windows.
Я столкнулся с этим с одним из моих собственных проектов.
Windows определяет мьютекс в своем сторожевом устройстве iostream. Linux нет. Linux, похоже, имеет блокировку в своих функциях C stdio, так что обычно это работает в любом случае.
Однако я определил пользовательский отладочный потоковый поток, который не прошел через stdio и получил все виды искажений в Linux.
Я справился с этим, используя мьютекс, который предварительно обрабатывается, если ОС Windows.