技術問題:闡述數組與指針的區別
兩者在含義上有區別
數組對應着一塊內存區域,而指針指向一塊內存區域。數組的容量和地址在其生命週期內不會改變,只有數組的內容可以改變。而指針指向的內存區域的大小是可以隨時改變,而且當指針指向常量字符串時,它的內容是不可以修改的,否則運行時就會報錯。
用運算符sizeof可以計算出數組的容量(字節數),而sizeof卻無法計算指針所指內存的容量,用sizeof(p)只能得到4或者2,即指針變量所對應的內存容量。在參數傳遞時,數組會自動退化爲同類型指針。
技術問題:闡述數組與指針的區別
兩者在含義上有區別
數組對應着一塊內存區域,而指針指向一塊內存區域。數組的容量和地址在其生命週期內不會改變,只有數組的內容可以改變。而指針指向的內存區域的大小是可以隨時改變,而且當指針指向常量字符串時,它的內容是不可以修改的,否則運行時就會報錯。
用運算符sizeof可以計算出數組的容量(字節數),而sizeof卻無法計算指針所指內存的容量,用sizeof(p)只能得到4或者2,即指針變量所對應的內存容量。在參數傳遞時,數組會自動退化爲同類型指針。