c语言如何表示字符串?

Python014

c语言如何表示字符串?,第1张

C语言中并没有字符这个类型,表示字符串时,需要使用字符数组,或字符指针。即char型数组,或char *指针。

char str[100] = "hello world"

就是一种字符串的表示方法。

另外,在C语言中,约定用字符数组表示字符串时,以'\0'为字符串结尾,即ascii码0。

C语言中没有字符串类型的变量。

他只有字符变量类型char,所以字符串用变通的方式来表示。

第一是字符数组来表示字符串。用下面的语句声明:

char a[10]

C语言中字符数组与字符串的唯一区别是字符串末尾有一个结束符'\0',而字符数组不需要。

如刚才声明的a[10]是一个含有10个元素的字符数组,它也能存放含有9个元素的字符串。

第二种方式是直接用指针。语句是:

char *a

用指针声明的字符数组,大多数功能与字符数组表示字符串相同。但也有以下两点不同,一是储存位置不同,用字符数组表示时,字符串是存放在储存器的变量区域内;而用指针表示的字符数组是存储在储存器的常量区内;第二个区别是字符数组的字符串可以更改,而指针表示的字符串不能更改。

有关字符串的赋值方法,如何引用,请参考相关书籍。

有什么问题请留言。

C语言中的字符串实际上就是char类型的一维数组。按照约定,C的字符串是以字符串结束标志\

0

(或null)结尾的。null字符就是所有位均为

0

的字符。因此,它的十进制值是

0

。由于字符串的处理具有它自己的方式,因此我们把它当作一个独立的主题。把字符串看成是长度可变,由\

0

定界、但最大长度不超过字符串本身长度的这种观点是非常有用的。字符串的长度必须包含存储结尾的\

0

字符所需要的存储空间。和所有数组一样,程序员应该确保字符串的边界未超出。字符串常量由一对双引号所包围。例如,"abc"是一个长度为4的字符数组,其中最后一个元素是结尾字符\

0

。注意,字符串常量和字符常量是不同的概念。例如,'a'

"a"

并不相同。后者拥有两个元素,一个是'a'

,另一个是'\

0

'。字符串常量和数组名一样,也是被编译器当成指针来对待的。它的值就是字符串的基地址。