FreeBSD Manual Pages
std::ios_ba..._with_stdio(3) C++ Standard Libary std::ios_ba..._with_stdio(3) NAME std::ios_base::sync_with_stdio - std::ios_base::sync_with_stdio Synopsis static bool sync_with_stdio( bool sync = true ); Sets whether the standard C++ streams are synchronized to the stan- dard C streams after each input/output operation. The standard C++ streams are the following: std::cin, std::cout, std::cerr, std::clog, std::wcin, std::wcout, std::wcerr and std::wclog The standard C streams are the following: stdin, stdout and stderr For a standard stream str, synchronized with the C stream f, the following pairs of functions have identical effect: 1) std::fputc(f, c) and str.rdbuf()->sputc(c) 2) std::fgetc(f) and str.rdbuf()->sbumpc() 3) std::ungetc(c, f) and str.rdbuf()->sputbackc(c) In practice, this means that the synchronized C++ streams are un- buffered, and each I/O operation on a C++ stream is immediately applied to the corre- sponding C stream's buffer. This makes it possible to freely mix C++ and C I/O. In addition, synchronized C++ streams are guaranteed to be thread- safe (individual characters output from multiple threads may interleave, but no data races occur) If the synchronization is turned off, the C++ standard streams are allowed to buffer their I/O independently, which may be considerably faster in some cases. By default, all eight standard C++ streams are synchronized with their respective C streams. If this function is called after I/O has occurred on the standard stream, the behavior is implementation-defined: implementations range from no effect to destroying the read buffer. Parameters sync - the new synchronization setting Return value synchronization state before the call to the function Example // Run this code #include <iostream> #include <cstdio> int main() { std::ios::sync_with_stdio(false); std::cout << "a\n"; std::printf("b\n"); std::cout << "c\n"; } Possible output: b a c See also cout writes to the standard C output stream stdout wcout (global object) cerr writes to the standard C error stream stderr, unbuffered wcerr (global object) clog writes to the standard C error stream stderr wclog (global object) http://cppreference.com 2022.07.31 std::ios_ba..._with_stdio(3)
NAME | Synopsis | Parameters | Return value | Example | Possible output: | See also
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::ios_base::sync_with_stdio&sektion=3&manpath=FreeBSD+Ports+15.0>
