An array of ordinary character type (
[basic.fundamental]),
char8_t array,
char16_t array,
char32_t array,
or 
wchar_t array
may be initialized by
an ordinary string literal,
UTF-8 string literal,
UTF-16 string literal,
UTF-32 string literal, or
wide string literal,
respectively, or by an appropriately-typed 
string-literal enclosed in
braces (
[lex.string])
.Additionally, an array of 
char or
unsigned char
may be initialized by
a UTF-8 string literal, or by
such a string literal enclosed in braces
.Successive
characters of the
value of the 
string-literal
initialize the elements of the array,
with an integral conversion (
[conv.integral])
if necessary for the source and destination value
.[
Example 1: 
char msg[] = "Syntax error on line %s\n";
shows a character array whose members are initialized
with a
string-literal.  Note that because
'\n'
is a single character and
because a trailing
'\0'
is appended,
sizeof(msg)
is
25. — 
end example]