當前位置:學者齋 >

計算機 >C語言 >

C語言入門知識之字符串與指針

C語言入門知識之字符串與指針

導語:字符串或串(String)是由數字、字母、下劃線組成的一串字符。它是編程語言中表示文本的數據類型。下面是其相關知識,歡迎閲讀:

C語言入門知識之字符串與指針

 1、 字符串的表示形式

C語言中,我們可以用兩種方式訪問字符串

(1) 用字符數組存放一個字符串,然後輸出該字符串。

main(){

char string[]="I love China!";

printf("%s", string);

(2) 用字符指針指向一個字符串。可以不定義字符數組,而定義一個字符指針。用字符指針指向字符串中的字符。

main(){

char *string="I love China!";

printf("%s", string);

在這裏,我們沒有定義字符數組,而是在程序中定義了一個字符指針變量string,用字符串常量"I love China!",對它進行初始化。C語言對字符串常量是按字符數組處理的,在內存中開闢了一個字符數組用來才存放該字符串常量。對字符指針變量初始化,實際上是把字符串第1個元素的地址(即存放字符串的字符數組的首元素地址)賦給string。有人認為string是一個字符串變量,以為在定義時把"I love China!"這幾個字符賦給該字符串變量,這是不對的!!

實際上,char *string="I love China!";等價於:

Char *string;

String = “I love China!”;

可以看到,string被定義為一個指針變量,指向字符型數據,請注意它只是指向了一個字符變量或其他字符類型數據,不能同時指向多個字符數據,更不是把“I love China!”這些字符存放到string中(指針變量只能存放地址),也不是把字符串賦給*string。只是把“I love China!”的第一個字符的地址賦給指針變量string。

在輸出時,要用:printf(“%s”, string);,其中“%s”是輸出字符串時所用的格式符,在輸出項中給出字符指針變量名,則系統先輸出它所指向的一個字符數據,然後自動是string加1,使之指向下一個字符,然後再輸出一個字符……如此知道遇到字符串結束標誌“