c.语言字符数组,C 语言字符数组的定义与初始化

1、字符数组的定义与初始化

字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素。

char str[10]={ ‘I’,’ ‘,‘a’,‘m’,’ ‘,‘h’,‘a’,‘p’,‘p’,‘y’};

即把10个字符分别赋给str[0]到str[9]10个元素

如果花括号中提供的字符个数大于数组长度,则按语法错误处理;若小于数组

长度,则只将这些字符数组中前面那些元素,其余的元素自动定为空字符(即

‘\0’ )。

2、字符数组与字符串

在c 语言中,将字符串作为字符数组来处理。(c++中不是)

在实际应用中人们关心的是有效字符串的长度而不是字符数组的长度,例如,

定义一个字符数组长度为100,而实际有效字符只有40个,为了测定字符串的实

际长度,C 语言规定了一个“字符串结束标志”,以字符’\0’代表。如果有一个字

符串,其中第10个字符为’\0’,则此字符串的有效字符为9个。也就是说,在遇到

第一个字符’\0’时,表示字符串结束,由它前面的字符组成字符串。

系统对字符串常量也自动加一个’\0’作为结束符。例如"C Program”共有9个字

符,但在内存中占10个字节,最后一个字节’\0’是系统自动加上的。(通过sizeof()

函数可验证)

有了结束标志’\0’后,字符数组的长度就显得不那么重要了,在程序中往往依靠

检测’\0’的位置来判定字符串是否结束,而不是根据数组的长度来决定字符串长

度。当然,在定


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部