C语言中strlen的使用!
有以下程序输出结果为什么是3?#include<stdio.h>#include<strting.h>main(){printf("%d\n",strlen("s\n\0...
有以下程序 输出结果为什么是3?
#include <stdio.h>
#include <strting.h>
main()
{
printf("%d\n",strlen("s\n\016\0end"));
}
为什么最后的答案是 3 ??? 展开
#include <stdio.h>
#include <strting.h>
main()
{
printf("%d\n",strlen("s\n\016\0end"));
}
为什么最后的答案是 3 ??? 展开
1个回答
2017-08-11
展开全部
这个问题问的好。strlen是以\0作为标志结束的。s\n\016\0。-.-\016...\016是一个转义后的字符 016是8进制数
追问
那只有 's' '\' 'n'
这三个是计算在字符长度里面的吗?
那后面的 end 是什么意思?不用管吗?
追答
计算到长度里面的是 s \n \018 这三个。strlen遇到第一个\0就结束
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询