我正在学习 C/C++,突然出现很多我不熟悉的术语。其中之一是以零结尾的变量或指针。内存中的一个空间以零结尾是什么意思?
最佳答案
以 ASCII 格式获取字符串 Hi
。它在内存中最简单的表示是两个字节:
0x48
0x69
但是那段内存在哪里结束呢?除非您还准备传递字符串中的字节数,否则您不知道 - 内存片段本质上没有长度。
所以 C 有一个标准,字符串以零字节结尾,也称为 NUL
字符:
0x48
0x69
0x00
字符串现在明确为两个字符长,因为在 NUL
之前有两个字符。
关于c++ - "terminated by a zero"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2667648/