Compiler Warning (level 1) C4566
Collapse the table of content
Expand the table of content
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

Compiler Warning (level 1) C4566

Error Message

character represented by universal-character-name 'char' cannot be represented in the current code page (page)

Not every Unicode character can be represented in your current ANSI code page.

Narrow strings (one-byte characters) are converted to multi-byte characters whereas wide strings (two-byte characters) are not.

The following sample generates C4566:

// C4566.cpp
// compile with: /W1
int main() {
   char c1 = '\u03a0';   // C4566
   char c2 = '\u0642';   // C4566

   wchar_t c3 = L'\u03a0';   // OK
   wchar_t c4 = L'\u0642';   // OK
© 2016 Microsoft