[PIC®/AVR®/dsPIC®产品] 字符串的存储结束符也占用空间吗?

[复制链接]
2504|15
 楼主| 稳稳の幸福 发表于 2024-4-23 23:24 | 显示全部楼层 |阅读模式
结束符是不是占用了这个字符串的空间呢?
比如“12345”存储的时候是占用5个字节还是占用6个字节?

huahuagg 发表于 2024-4-24 15:00 | 显示全部楼层
\0是字符串结束标志,不计入串长,但要占内存空间.
huahuagg 发表于 2024-4-24 15:01 | 显示全部楼层
计算机存储一个字符用1个字节;存储字符串时,每个字符要占用1个字节,字符串结束标记符也要占1个字节,所以存储字符串”X”要占用2字节。
小明的同学 发表于 2024-4-29 21:11 | 显示全部楼层
应该是会有个结束标记占用控件。
Candic12e 发表于 2024-5-11 10:13 | 显示全部楼层
是的,字符串的存储结束符也会占用空间。
Belle1257 发表于 2024-5-11 11:19 | 显示全部楼层
在C语言中,字符串通常以空字符'\0'作为结束符。因此,无论字符串的内容有多长,都需要额外的一个字节来存储结束符
Emily999 发表于 2024-5-11 12:23 | 显示全部楼层
正常是占用空间的,这一点需要在内存分配和字符串处理时予以考虑
Charlene沙 发表于 2024-5-11 14:01 | 显示全部楼层
对于字符串"12345",实际上是占用6个字节的空间
Annie556 发表于 2024-5-11 15:16 | 显示全部楼层
其实5个字节用于存储字符'1'、'2'、'3'、'4'、'5',另外一个字节用于存储字符串的结束符'\0'。因此,即使字符串本身的长度是5个字符,但在内存中需要占用6个字节的空间
Allison8859 发表于 2024-5-11 16:25 | 显示全部楼层
当然要占用空间啦,不然这结束符放哪儿
Carina卡 发表于 2024-5-12 07:30 | 显示全部楼层
得看你怎么设计的,要是存在数组里,其实你仿真的时候能看到的
B1lanche 发表于 2024-5-12 09:06 | 显示全部楼层
一般都是占用空间的才对
alxd 发表于 2024-5-12 10:10 | 显示全部楼层
我理解是占用的,不然也不能凭空消失啊
gouguoccc 发表于 2024-5-12 11:20 来自手机 | 显示全部楼层
要占用内存存储空间
Betty996 发表于 2024-5-12 12:23 | 显示全部楼层
结束符也要占用空间,这是正常的
呐咯密密 发表于 2024-5-13 13:31 | 显示全部楼层
结束符是要占用内存的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

204

主题

3450

帖子

8

粉丝
快速回复 在线客服 返回列表 返回顶部