xiaoshuai666 发表于 2016-9-16 14:28:34

字符串长度

不明白长度为什么是6,求大神指点

#include <stdio.h>
#include <string.h>
void main()
{
        printf("%d\n",strlen("\t\"\\\n\'\065\08AB"));
}

mingcxx 发表于 2016-9-16 19:23:52

本帖最后由 mingcxx 于 2016-9-16 22:12 编辑

1.\t
2.\"
3.\\
4.\n
5.\'
6.\065

Krant5 发表于 2016-9-16 19:33:26

\是转义字符,但是第六个字符 是\065    这是八进制表示法,但是最后一个\08AB 就不存在了,解释成 \0 终止 ,所以字符数为6

xiaoshuai666 发表于 2016-9-16 19:45:32

mingcxx 发表于 2016-9-16 19:23


谢谢啦

xiaoshuai666 发表于 2016-9-16 19:46:09

Krant5 发表于 2016-9-16 19:33
\是转义字符,但是第六个字符 是\065    这是八进制表示法,但是最后一个\08AB 就不存在了,解释成 \ ...

明白了,谢谢啦
页: [1]
查看完整版本: 字符串长度