TA贡献1851条经验 获得超5个赞
好的。
在C99中有三个基本案例,即:
当这是&(地址-of)接线员。
&
当这是sizeof接线员。
sizeof
当它是类型为字符串的文字时char [N + 1]或类型为宽字符串的文字。wchar_t [N + 1](N用于初始化数组的字符串的长度,如char str[] = "foo";或wchar_t wstr[] = L"foo";.
char [N + 1]
wchar_t [N + 1]
N
char str[] = "foo";
wchar_t wstr[] = L"foo";
此外,在C11中,新引入的alignof运算符也不允许其数组参数衰减为指针。
alignof
在C+中,有一些附加规则,例如,当它通过引用传递时。
TA贡献1797条经验 获得超4个赞
首先,在初始化时,它特别写着“字符串文字”。它根本没有提到“数组表达式”或“表达式”。因此,字符串字面语法恰好在两处使用:作为初始化的右侧,也用作表达式。这并不意味着初始化的右侧是表达式。另外,专门问到的关于“数组名称”的问题,而字符串文字不是数组名称,您不能将数组名称(或任何其他数组表达式,除了字符串文字)放在数组初始化的右侧。
举报