为了账号安全,请及时绑定邮箱和手机立即绑定

帮忙通俗解释一下‘\0’及 文中意思

帮忙通俗解释一下‘\0’及 文中意思

C C# C++
qq_改恒_0 2017-08-14 11:57:13
查看完整描述

1 回答

已采纳
?
瓦力老师

TA贡献10条经验 获得超19个赞

在C语言中,字符串实际上是由字符数组来存储的,例如"hello",在C语言中由双引号括起来的表示字符串,是['h', 'e', 'l', 'l', 'o', '\0']组成的,这里面的每一项都是一个单独的字符,由单引号括起来的是字符。文中表达的意思,主要是为了解释字符串的构成,以及与字符之间的关系与区别,'\0'是一个空字符,即没有实质的内容,但是起到了占位标记的作用,C语言就是通过判定字符数组中的元素是否为'\0'来决定对应字符串的结尾位置的。包括文中的strlen函数,它的原理就是不断的遍历字符数组,每遍历一个字符元素,长度 i 就加1,当遇到'\0'时,即认定字符串结束,此时的长度 i 即为字符串的真实长度。那么,文末中的"x"是由双引号括起来的字符串,它的真实结构是['x', '\0'],'\0'表示"x"的结束位置,而'x'表示的单个字符x,是字符串"x"的其中一个字符项。

查看完整回答
4 反对 回复 2017-08-14
  • qq_改恒_0
    qq_改恒_0
    那“ 空格”表示什么?
  • 瓦力老师
    瓦力老师
    如果是空格字符,那就是' '(即单引号括起来的空格),如果是空格字符串,即" ",那么就是由' '和'\0'组成的,另外,虽然肉眼是看不到空格的,但空格在计算机中也是有占位符的,空格的ASCII码是32,在C语言中字符是以ASCII码形式存放在对应的内存空间的。
  • 1 回答
  • 0 关注
  • 1492 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信