如何解决如何空终止字符串?
当我在多个网站上读到时,空终止字符是一个字符,即大小为 1 个字节。
我访问了这个网站:http://string-functions.com/string-hex.aspx
并将 Hi
转换为 hexa 并得到:48 69
然后我想空终止我的字符串,所以我写道:
Hi\0
并得到:48 69 5c 30
如您所见,添加了 2 个字节而不是 1 个,这是为什么?
值得一提的是,对于换行符 \n
也是如此。
解决方法
\0
在 C 语言中只是一个转义的 NUL 字符,其中 \nnn
表示一个字节,在八进制数系统中保存值 nnn
。
当您在网站上执行 Hi\0
时,它没有关于 C 或任何一般语言的语法或内在的概念。它将所有字符视为它们本来的样子,单独的字节(包括 \
和 0
,因为它们毕竟是字符。)
'H' 'i' '\\' '0'
0x48 (72) 0x69 (105) 0x5c (92) 0x30 (48)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。