C語言字符串的引用方式
- 在C語言程序中,字符串是存放在字符數(shù)組中的。
- 用字符數(shù)組存放一個(gè)字符串,可以通過數(shù)組名和下標(biāo)引用字符串中的一個(gè)字符,也可以通過數(shù)組名和格式聲明%s輸出該字符串。
- 用字符指針變量指向一個(gè)字符串常量,通過字符指針變量引用字符串常量。
- 通過字符數(shù)組名或字符指針變量可以輸出一個(gè)字符串,而對(duì)一個(gè)數(shù)值型數(shù)組,是不能企圖用數(shù)組名輸出它的全部元素的。
C語言字符指針作函數(shù)參數(shù)
如果想把一個(gè)字符串從一個(gè)函數(shù)“傳遞”到另一函數(shù),可以用地址傳遞的方法,即用字符數(shù)組名作參數(shù),也可以用字符指針變量作參數(shù)。
在被調(diào)用的函數(shù)中可以改變字符串的內(nèi)容,在主調(diào)函數(shù)中可以引用改變后的字符串。
C語言使用字符指針變量和字符數(shù)組的比較
字符數(shù)組由若干個(gè)元素組成,每個(gè)元素中放一個(gè)字符,而字符指針變量中存放的是地址(字符串第1個(gè)字符的地址),絕不是將字符串放到字符指針變量中。
賦值方式:可以對(duì)字符指針變量賦值,但是不能對(duì)數(shù)組名賦值。
初始化的含義:對(duì)字符指針變量賦初值。
存儲(chǔ)單元的內(nèi)容:編譯時(shí)為字符數(shù)組分配若干個(gè)存儲(chǔ)單元,以存放各元素的值,而對(duì)字符指針變量,只分配一個(gè)存儲(chǔ)單元。
C語言使用字符指針變量和字符數(shù)組注意事項(xiàng)
- 指針變量的值是可以改變的,而數(shù)組名代表一個(gè)固定的值,即數(shù)組首元素地址,不能改變。
- 字符數(shù)組中各元素的值是可以改變的,但字符指針變量指向的字符串常量中的內(nèi)容時(shí)不可以被取代的。
- 引用數(shù)組元素。對(duì)字符數(shù)組可以用下標(biāo)法引用一個(gè)數(shù)組元素,也可以用地址法。
- 用指針變量指向一個(gè)格式字符串,可以用它代替printf函數(shù)中的格式字符串。
C語言通過指針引用數(shù)組案例
#include
#include //為了引入求字符串長度函數(shù)
int main()
{
char str[] ="hello xiaolin";//將字符串放在字符數(shù)組中
char *pstr = str;
for(int i=0; i<strlen(str); i++)
{
printf("%c", *(pstr+i));
}
printf("\\n");
return 0;
}
編譯運(yùn)行結(jié)果:
hello xiaolin
--------------------------------
Process exited after3.3 secondswith return value0
請(qǐng)按任意鍵繼續(xù). . .
-
C語言
+關(guān)注
關(guān)注
180文章
7604瀏覽量
136813 -
字符
+關(guān)注
關(guān)注
0文章
233瀏覽量
25208 -
指針
+關(guān)注
關(guān)注
1文章
480瀏覽量
70561 -
數(shù)組
+關(guān)注
關(guān)注
1文章
417瀏覽量
25945
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論