• The same is true of std::endl. std::endl is simply defined as << '\n' << std::flush; nothing more, nothing less. In all cases where endl gives you a “properly translated” newline, so does \n.

      • AnyOldName3@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        1 day ago

        It’s controlled by whether the stream’s opened in text mode or binary mode. On Unix, they’re the same, but on Windows, text mode has line ending conversion.

    • zenforyen@feddit.org
      link
      fedilink
      arrow-up
      1
      ·
      1 day ago

      Yeah it’s an artificial dichotomy based on a popular misconception of what std::endl is and how \n is interpreted.

      Ultimately it does not ask about line endings, but about flushing, which is a completely orthogonal question.