C 风格字符串 = 以 '\0' 结尾的字符数组

"Hi" 占 3 个字节:'H' 'i' '\0' —— 末尾的 '\0' 是字符串的「终点」标记
char s[] = "Hi"; 字符数组 s 在内存中连续存放 从 s[0] 开始读 遇到 '\0' 立即停止 → 字符串内容 = "Hi" 2 个可见字符,却要占 3 个字节 —— 数组长度必须比字符数 至少多 1 若 '\0' 被覆盖 / 漏写:找不到终点,越界读进相邻内存(未定义行为) 指针停不下来,继续往后读 → 读到垃圾值甚至崩溃