Yes, it's controlled by the locale (via the num_get
facet), but no locale I ever heard of supports C++ language literals, and it would be the wrong place to customize this.
Streams are for general-purpose I/O, and C++ integer literal suffixes are very specialized.
The exact behavior of the default num_get
facet is described in the C++11 standard in section 22.4.2.1. The description partially references the strto*
family of functions from the C standard library. You can find a somewhat condensed version here: