早教吧 育儿知识 作业答案 考试题库 百科 知识分享

若有以下定义:chars='\092';则该语句().A:使s的值包含1个字符B:定义不合法,s的若有以下定义:chars='\092';则该语句()。A:使s的值包含1个字符B:定义不合法,s的值不确定C:使s的值包含4个字符

题目详情
若有以下定义:char s='\092'; 则该语句().A:使s的值包含1个字符B:定义不合法,s的
若有以下定义:char s='\092';
则该语句(
)。A:使s的值包含1个字符 B:定义不合法,s的值不确定
C:使s的值包含4个字符 D:使s的值包含3个字
求具体解释
▼优质解答
答案和解析
这个问题真的挺有意思的。\0oo是标志该字符是以八进制定义的。但如果o不是合法的数字(应该在0-7)之间,就会忽略这些数字,只取最后一位数字。
比如\092因为9不在有效范围,所以被忽略。上述定义就等价于char s = '2';
可以做个实验,char s='\095235235212';然后printf("%c",s);看看,一样输出2.
所以答案是A。