-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正確得到了重點 –