C语言的简单问题。/。...

来源:百度知道 编辑:UC知道 时间:2024/06/17 03:04:59
main()
{
printf(" %d\n",strlen("s\n\016\0end"));
}
打印的为什么会是3 ?
是怎么样区的的?

第一个字符为s
第二个字符为\n 即回车
第三个字符为\016 八进制数,具体代表什么查查书
\0为字符串结束。
因而strlen()返回3

c语言中有字符串结束标志:"\0"遇到"\0"就说明字符串结束了,后面的字符不会被考虑到的。不过要是把它们存放到数组里的话是可以通过下标来访问的。
你的结果为3 是因为"\0"前面是3个字符分别是"s","\n","\016".