"char a[] = "string";" 之間的區別和"char *p = "string";"
在程式設計中,變數可以是指針,也可以是數組。宣告變數時,指標和陣列的語法不同。理解兩者之間的差異對於正確操作資料至關重要。
char a[] = "string";
這行程式碼建立了一個大字元陣列足以儲存字串「string」及其空終止符。數組“a”使用字串“string”的元素進行初始化。稍後可以修改數組,並且其大小在編譯時已知,允許使用“sizeof”運算符來確定其長度。
char *p = "string";
這行程式碼建立了一個名為「p」的指針,它指向字串「string」的位址。指標「p」無法修改,但它指向的字串可以修改,從而導致未定義的行為。
比較:
注意:問題中的範例包含拼字錯誤,如“?”在此上下文中不是有效的運算符。假設預期的問題是關於數組和指標之間的區別。
以上是C 中的 `char a[] = 'string';` 和 `char *p = 'string';` 有什麼不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!