2、%d打印十进制整数,字符'a'对应的整型值(ASCII码)是97
3、虽然printf的第三个参数是k,但是在前面的""格式串里没有打印要求(例如余明差%d),所以不会打印
4、第二个printf,%d是打印是十进制整数,k=12所以打印12(另外"k="是在格式串里面有的,就原样输出了)
正确的答案是5,题目选项有误。
首先strlen()函数返回的长度是不包含'\0',
第一个字符为:a
第银早二个字符为:b
第三个字符锋猛雀为:\n (换行符)
第四个字符为:2
第五个字符为:\ (\\转义为\)
所以答案为5。
(下图为实际代码演示)
扩展内容:
strlen()函数(C语言函数):
strlen所作的仅仅是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域知拆)开始扫描,直到碰到第一个字符串结束符'\0'为止,然后返回计数器值(长度不包含'\0')。
参考资料:strlen函数 - 百科
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)