C ++中字符串文字的类型是什么?

2021-12-25 00:00:00 string types c++

例如,字符串文字Hello"的类型是什么,const char[6]const char* ?

For example, what is the type of the string literal "Hello", const char[6] or const char* ?

推荐答案

字符串字面量 "Hello" 的类型是 "6 const char 的数组".

The type of the string literal "Hello" is "array of 6 const char".

普通字符串文字和 UTF-8 字符串文字也称为窄字符串文字.窄字符串文字的类型为数组 n const char",其中 n 是字符串的大小 [...]

Ordinary string literals and UTF-8 string literals are also referred to as narrow string literals. A narrow string literal has type "array of n const char", where n is the size of the string [...]

但是,它可以通过数组到指针的转换转换为 const char*.数组到指针的转换导致指向数组第一个元素的指针.

It can, however, be converted to a const char* by array-to-pointer conversion. Array-to-pointer conversion results in a pointer to the first element of the array.

相关文章