gpt4 book ai didi

c++ - "terminated by a zero"是什么意思?

转载 作者:行者123 更新时间:2023-11-30 17:31:19 32 4
gpt4 key购买 nike

我正在学习 C/C++,突然出现了很多我不熟悉的术语。其中之一是以零结尾的变量或指针。内存中的空格以零结尾是什么意思?

最佳答案

采用 ASCII 格式的字符串 Hi。它在内存中最简单的表示是两个字节:

0x48
0x69

但是那段内存的尽头在哪里呢?除非您还准备好传递字符串中的字节数,否则您不知道 - 内存片段本质上没有长度。

所以 C 有一个标准,字符串以零字节结尾,也称为 NUL 字符:

0x48
0x69
0x00

该字符串现在明确为两个字符长,因为 NUL 之前有两个字符。

关于c++ - "terminated by a zero"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24677946/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com