void main(){
char str1[10] = "Hello", str2[10] = "World";
printf(5 + "Good Morning\n");
}
以上代码输出:
早上
我不明白为什么。
数组
"Good Morning\n"
(类型char[14]
)在与整数相加的情况下,被转换为指向其第一个元素('G'
)的指针。
该指针增加 5,因此指向
'M'
。
早上好 0 1 2 3 4 5 6 ...
printf()
接收字符串 "Morning\n"
作为格式字符串。因为没有%
,所以直接打印就可以了