Content deleted Content added
Descripted behaviour dates to 2012 |
|||
Line 35:
=== Programming platforms ===
Around 2012 Microsoft's compilers could not produce UTF-8 string constants from UTF-8 source files. This is due to them converting all strings to the locale code page (which could not be UTF-8). At one time the only method to work around this was to turn ''off'' {{tt|UNICODE}}, and ''not'' mark the input file as being UTF-8 (i.e. do not use a [[UTF-8#Byte order mark|BOM]]).<ref>[http://utf8everywhere.org/#faq.literal UTF-8 Everywhere FAQ: How do I write UTF-8 string literal in my C++ code?]</ref>{{Obsolete source|reason=This source seems more than 10 years old. (Citing Unicode 6.2). Can this contents be verified?|date=July 2024}} This would make the compiler think both the input and outputs were in the same single-byte locale, and leave strings unmolested. On modern systems setting the code page to UTF-8 helps, but there are still problems using {{code|\x}} to get individual bytes into the UTF-8.{{Citation needed|date=July 2024|reason=Not sure if this is true}}
== See also ==
|