• 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.