c語言字元陣列和字串的區別,字元陣列是乙個儲存字元的陣列,而字串是乙個用雙括號括起來的以'\0'結束的字串行,雖然字串是儲存在字元陣列中的,但是一定要注意字串的結束標誌是'\0'。
所以c得字串函式不需要傳遞長度的原因都是通過結束識別符號'\0'來決定的。
通常字元陣列中的所儲存的內容也可以稱為字串,char *p1 = "a string.";
和char p2 = "another string.";
這兩種寫法的不同吧.
p1指向的這個字串是個常量, 不可改變, 程式在編譯期間就為"a string."這個字串分配了固定的空間, 它被儲存在全域性靜態區中.
而p2是個變數, 其內容可以被更新和改變, p2可以理解為乙個不可改變其指向位置的指標, 即char * const p2, 它所占用的內存在程式執行時被自動分配和釋放, 而p1占用的記憶體要等到整個程式結束時才被釋放.
c中字串常量和字元陣列的區別
在c語言中我們經常會認為字串常量和字元數值本質是一樣的,但實際上這兩者是有區別。下面我麼以乙個例子來進行說明。includevoid mian 當中的 helloworld n 實際上代表的是乙個指向無名字元陣列的起始指標,該字元陣列的大小是包含字串中所有的內容,外加乙個 0 所以 printf h...
c 中字串和字元陣列
字串可以用字元陣列與字串變數兩種方式來儲存,效果類似。一 用字元陣列來儲存字串 char st1 100 st2 100 字元陣列說明 cin st1 st2 long a,b 輸入 hello,world 則st1 st2 字元 0 為字串結束標誌 1.字元陣列長度 strlen st1 如a s...
字串 字串陣列 字元陣列的區別
string a newstring 字串 string a newstring 5 字串陣列 char a newchar 5 字元陣列 string a newstring abc 字串 string a newstring 字串陣列的賦值 string a 字串陣列的初始化 char a ne...