簡單了解C語言字元串
C語言中不存在字元串這種資料類型,但存在字元串的概念,即字元串常量。C語言中的字元串都以字元串常量的形式出現或存儲在字元數組中。字元串常量本質上是一個字元數組,但它的内容和長度在初始化的時候就已經被固定了,不可修改。可以通過一個指向字元串常量第一個元素的指針來通路該字元串常量。
看下面的一個例子:
首先我們定義了一個字元指針
p
。通過
"Mario"
語句在記憶體中開辟出一塊空間,在這塊空間中建立了一個字元數組,字元數組的内容為
'M' 'a' 'r' 'i' 'o' '\0'
,同時将字元數組的第一個元素
'M'
的位址指派給了字元指針
p
,使字元指針
p
指向了該字元串的第一個元素
'M'
。此時,可以通過
printf("%s",p)
語句輸出該字元串。
但是,由于之前提到的C語言中不存在字元串類型,是以不能直接将一個字元串通過
=
指派給一個字元數組變量:
不過,在初始化字元數組的時候,我們可以通過下面的形式對字元數組進行初始化: