-2
char *str1 = "pupupupu";
char str2[] = "pupupupu";
printf("%s\t%d\n", str1, (int)sizeof(str1));
printf("%s\t%d\n", str2, (int)sizeof(str2));
输出:有关的sizeof(字符*)和sizeof(的char [])
pupupupu 8
pupupupu 9
我的问题是:为什么是两个输出大小不同?
因为我电脑是X64的,所以一个指针的大小是8bit,这让我很困惑(我的例子字符串有8个字符),谢谢你的回答! – pupu007
@ pupu007是的PuPu..you正确得到了重点 –