不是\0占两个 而是里面实际上存在两个 \0"abc\n\0"实际上有6个字符 分别是:'a' , 'b' , 'c' , '\n' , '\0' , '\0'
strlen 计算有效字符个数,遇到'\0'字符终止。 sizeof 计算计算所有字符包括结尾符'\0'也计算在内 例如: char s[]="abcde" 这后面隐藏了,字符串结尾符'\0' \n和'\0'都是占一个字符的位置,并不存在其它情况。