解释一道简单的c语言题目

来源:百度知道 编辑:UC知道 时间:2024/05/31 07:37:29
Char c[]="\t\n\05";strlen(c)=?为什么答案是3,为什么把\05看作一个整体,而不需分开\0和5??

Char c[]="\t\n\05";

c[0]=\n;
c[1]=\t;
c[2]=\05;
所以strlen(c)=3;
在C程序中使用转义字符\ d d d或者\ x h h可以方便灵活地表示任意字符。\ d d d为斜杠后面跟三位八进制数,该三位八进制数的值即为对应的八进制A S C I I码值。\ x后面跟两位十六进制数,该两位十六进制数为对应字符的十六进制A S C I I码值。
所以
\05是\后跟一位八进制数,可通过程序实验,将5改成9后strlen(c)=2;

05是八进制的表达!