Skip to content
Wei, Jimmy T edited this page Mar 10, 2023 · 1 revision

Text I/O end of line

The use of '\n' is recommended over std::endl except if the explicit flush is desired​

  • The varying line-ending characters don't matter, assuming the file is open in text mode, which is what you get unless you ask for binary. The compiled program will write out the correct thing for the system compiled for. ​
  • The only difference is that std::endl flushes the output buffer, and '\n' does not. If you don't want the buffer flushed frequently, use '\n'.​
  • If you want to flush before the main/global scope destructors are called, then std::endl is needed at that point.​ Additional information can be found in C++ Core Guidelines
Clone this wiki locally