理论教育 字符串和字符串结束标志

字符串和字符串结束标志

时间:2023-11-21 理论教育 版权反馈
【摘要】:例如:" I am a student." ; " Hello" ; " a[5 ] = " ; " % f\n"2.字符串的长度在C语言中没有专门的字符串变量,字符串要通过字符数组存放。思考:如果要用一个新的字符串代替原有的字符串"python program",从键盘向字符数组输入"Hello",如果不加'\0'的话,字符数组中的字符将是什么?

字符串和字符串结束标志

1.字符串的概念

字符串是由若干有效字符的序列组成的,可包含转义字符和ASCII码表中的字符等。其形式为用双引号引起来的字符序列,以字符串的结束标志'\0'结束。例如:

" I am a student." ; " Hello" ; " a[5 ] = " ; " % f\n"

2.字符串的长度

在C语言中没有专门的字符串变量,字符串要通过字符数组存放。为了测定字符串的实际长度,C语言规定了字符串总是以'\0'作为结束符。因此,当把一个字符串存入一个数组时,也把结束符'\0'存入数组,并以此作为该字符串是否结束的标志。

3.用字符串对数组初始化

C语言允许用字符串的方式对数组作初始化赋值。例如:

char c[ ] = { 'c', '','p','r', 'o' ,'g' ,'r','a','m'} ;(www.daowen.com)

可写为:char c [ ] = { " c program" } ;

或去掉{}写为:char c [ ] = " c program" ;

字符数组用字符串方式赋值比用字符逐个赋值要多占一个字节的空间,用于存放字符串结束标志'\0'。用字符串赋值的数组c在内存中的实际存放情况为:

'\0'是由C编译系统自动加上的。由于采用了'\0'标志,所以在用字符串赋初值时一般无须指定数组的长度,而由系统自行处理。例如:

char c [ ] = { " python program" } ;

该数组无需指定长度,C编译系统默认该数组长度为15个字节。

思考:如果要用一个新的字符串代替原有的字符串"python program",从键盘向字符数组输入"Hello",如果不加'\0'的话,字符数组中的字符将是什么?

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈