C语言中字符串的 长度问题

转义字符 ”\0mn“ 的长度为什么是0,而不是2.希望可以求解(详细解释,务必清楚)

因为 \0 是字符串结束标志,遇到它后面的就不算是字符串的内容。

strlen函数判断长度需要判断0x00数值的结束符,从左到右判断处理,\0数值为0x00

strlen是根据\0判断的,第一个字符为\0,肯定长度为0

字符串遇到 \0 结束。没有写出\0只是默认最后存放\0。