1、字元陣列的定義與初始化
字元陣列的初始化,最容易理解的方式就是逐個字元賦給陣列中各元素。
char str[10]={ 'I',' ','a','m',' ','h','a','p','p','y'};
即把10個字元分別賦給str[0]到str[9]10個元素
如果花括號中提供的字元個數大於數組長度,則按語法錯誤處理;若小於數組長度,則只將這些字元數組中前面那些元素,其餘的元素自動定為空字元(即 '
3、字串的表示形式
在C語言中,可以用兩種方法表示和存放字串:
(1)用字元陣列存放一個字串
char str[ ]="I love China";
( 2)用字元指標指向一個字串
char* str="I love China";
對於第二種表示方法,有人認為str是一個字串變量,以為定義時把字串常數"I love China"直接賦給該字串變量,這是不對的。
C語言對字串常數是按字元數組處理的,在記憶體中開闢了一個字元數組用來存放字串常數,程式在定義字串指標變數str時只是把字串首地址(即存放字串的字元數組的首位址)賦給str。
兩種表示方式的字串輸出都用
printf("%sn",str);
%s表示輸出一個字串,給出字元指標變數名稱str(對於第一種表示方法,字元陣列名即是字元陣列的首位址,與第二種中的指標意義是一致的),則系統先輸出它所指向的一個字元數據,然後自動使str自動加1,使之指向下一個字元...,如此,直到遇到字串結束識別碼"