_Phoebe__ 2022-05-10 18:09 采纳率: 96.9%
浏览 19
已结题

这个输出结果为什么是11 strlen算的都是谁的


cout<<strlen(″result\t\″EN\n\0″);

这个输出结果为什么是11 strlen算的都是谁的

  • 写回答

2条回答 默认 最新

  • 吕布辕门 新星创作者: 后端开发技术领域 2022-05-10 18:22
    关注

    strlen:所作的是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符’\0’为止,然后返回计数器值(长度不包含’\0’)。–百度

    \t:为转义字符,占一个字节。
    result\t:占7个字节。
    “:为转义字符,意义双引号字符,在这里相当于”“双引号,占一个字节。注意:定界符
    EN\n:EN应该为字符串常量,占两个字节,\n为:转义字符,占一个字节,但在系统会自动在字符串的尾部添加一个字符串的结束字符“\0”。所有后面的\0就没有扫描了 ,所以总计11个字节,答案为11。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月18日
  • 已采纳回答 5月10日
  • 创建了问题 5月10日