bool sync_with_stdio(bool sync = true);
Returns: true если предыдущее состояние standard iostream objects было синхронизировано, в противном случае возвращается false. При первом вызове функция возвращается true.
Когда стандартный объект iostream str находится synchronized со стандартным потоком stdio f, эффект вставки символа с c помощью
fputc(f, c);
такой же, как эффект
str.rdbuf()->sputc(c);
для любых последовательностей символов; эффект извлечения персонажа с c помощью
c = fgetc(f);
такой же, как эффект
c = str.rdbuf()->sbumpc();
для любых последовательностей символов; и эффект отодвигая персонажа c по
ungetc(c, f);
такой же, как эффект
str.rdbuf()->sputbackc(c);
для любой последовательности символов.292
Это означает, что операции над стандартным объектом iostream могут произвольно сочетаться с операциями над соответствующим потоком stdio. На практике синхронизация обычно означает, что стандартный объект iostream и стандартный объект stdio совместно используют буфер.