Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer


Defines the locale (Country/Region and language) to be used when translating wide-character constants and string literals.

#pragma setlocale( "[locale-string]" )

Because the algorithm for converting multibyte characters to wide characters may vary by locale or the compilation may take place in a different locale from where an executable file will be run, this pragma provides a way to specify the target locale at compile time. This guarantees that the wide-character strings will be stored in the correct format.

The default locale-string is "".

The "C" locale maps each character in the string to its value as a wchar_t (unsigned short). Other values that are valid for setlocale are those entries that are found in the Language Strings list. For example, you could issue:

#pragma setlocale("dutch")

The ability to issue a language string depends on the code page and language ID support on your computer.

© 2016 Microsoft