When I first saw C++ years ago, I thought it was very strange how it used cout and << to print to the screen. As far as I'm aware, C++ is the only language that uses an operator to print to the screen, so it definitely stands out as unusual.
The operator isn't entirely inconsistent, as there are other streams that accept the << operator with similar semantics, plus you can usually "reverse" the operator to >> for cin and similar. It just seems odd to me (and a little obtuse) that an operator originally used to shift bits gained a very different meaning.
A few languages have operators that have side effects. Some languages use ! as a binary operator for passing messages, which may or may not have side effects, depending on the message being passed.
But the thing is: C++ could have used functions to accomplish the same purpose, and depending on who you ask, that would be much clearer in most cases.
What advantage is there in using an operator instead of a function?
I can see a possible rationale with type safety. It is an improvement over printf for that particular issue, at least. It's a lot less verbose than a bunch of calls to an overloaded non-formatted print function. But that's a pretty flimsy use case. You can't exactly look at a C++ source file if you've never seen C++ before and know that the couts print to the screen.