631-C语言的字符和字符串的存储原理

不念不忘少年蓝@ 2022-09-12 07:46 250阅读 0赞

字符底层对应的整数

’0’ ‘1’ ‘2’底层对应的整数是多少?
在这里插入图片描述
在这里插入图片描述
代表的是键盘上的按键的符号
在这里插入图片描述
’0’字符对应的数字是48
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

\是转义字符

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
\跟着的是特定的,才能转义

字符串的存储

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
只有5个我们可以看见的字符,还存储的一个结尾的\0字符。
编译器编译指令的时候,最终系统运行的时候从数组的起始地址开始一直往后找,打印,从h一直往后打印,直到遇到\0才停止

如果写这样:内存只有5个位置,\0存不下,导致打印的时候数组越界访问,一直往后找,直到找到\0为止
在这里插入图片描述
在这里插入图片描述
我们一定要牢记,定义字符串数组的时候一定要给\0留位置
strlen是求字符串的有效元素的个数,是不计算\0的
\0不是有效字符,\0之前的是有效字符。
在这里插入图片描述
这样是错误的,
在这里插入图片描述
在这里插入图片描述
因为拷贝的时候没有把\0放进去。

在这里插入图片描述
在这里插入图片描述
打印的时候遇见\0就结束了

发表评论

表情:
评论列表 (有 0 条评论,250人围观)

还没有评论,来说两句吧...

相关阅读