什么时候将数组变量视为指针,何时将其视为C中的简单数组?例如,有时sizeof(array_variable)运算符返回地址大小,有时返回数组的大小。
C 2011(N1570)6.3.2.1 3:
除非它是sizeof运算符,_Alignof运算符或一元&运算符的操作数,或者是用于初始化数组的字符串文字,否则将类型为“ array of type ”的表达式转换为带有输入“”指针类型“”指向阵列对象的初始元素,不是左值。如果数组对象具有寄存器存储类,则该行为是不确定的。
C 2011(N1570)6.7.6.3 7:
参数声明为“类型数组”应调整为“类型指针”,其中类型限定符(如果有)是在数组类型派生的[和]中指定的那些。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句