C語言字符串

C語言中的字符串是由\0(空字符)終止的字符數組。

在C語言中有兩種方法可以用來聲明字符串。

  • 通過字符數組
  • 通過字符串文字

我們來看一下C語言中用char數組聲明字符串的例子 -

char ch[11]={'y', 'i', 'i', 'b', 'a', 'i', '.', 'c', 'o', 'm', '\0'};

如你所知,數組索引從0開始,所以它將如下圖表所示 -

0

1

2

3

4

5

6

7

8

9

10

y

i

i

b

a

i

.

c

o

m

\0

在聲明字符串時,如果不想數組大小是強制性的。 那麼可以將上面的代碼改寫爲如下:

char ch[]={'j', 'a', 'v', 'a', 't', 'p', 'o', 'i', 'n', 't', '\0'};

您還可以通過字符串文字定義字符串。 例如:

char ch[]="yiibai.com";

在這種情況下,'\0'將由編譯器自動在字符串末尾附加。

char數組和字符串文字之間的區別

唯一的區別是字符串字面值不能改變,而由char數組聲明的字符串可以更改。

C語言字符串示例

我們來看一個簡單的例子來聲明和打印字符串。 '%s'用於打印字符串。創建一個源文件:string-print.c,其代碼如下 -

#include <stdio.h>  
void main()
{
    char ch[11] = { 'y', 'i', 'i', 'b', 'a', 'i', '.', 'c', 'o', 'm', '\0' };
    char ch2[] = "www.yiibai.com";

    printf("Char Array Value is: %s\n", ch);
    printf("String Literal Value is: %s\n", ch2);
}

執行上面示例代碼,得到以下結果 -

Char Array Value is: yiibai.com
String Literal Value is: www.yiibai.com