有以下程序 main( ) { char a,b,c,*d; a=’\’;b=’\xbc’; c=’\0xab’;d="\0127"; cout<<a<<b<<c<<*d<<endl; } 编译时出现错误,以下

admin2010-12-16  21

问题 有以下程序
   main( )
   {   char a,b,c,*d;
   a=’\’;b=’\xbc’;
   c=’\0xab’;d="\0127";
   cout<<a<<b<<c<<*d<<endl;
   }
   编译时出现错误,以下叙述中正确的是

选项 A、程序中只有a=’\’;语句不正确
B、b=’\xbc’;语句不正确
C、d="\0127";语句不正确
D、a=’\’;和c=’\0xab’;语句都不正确

答案D

解析 本题考察C++中各种类型在输出时的转化关系。斜杠为转义控制字符,其后必须紧跟一个字符,故首先可以确定的是a的赋值语句是错误的,根据选项我们直接看c的赋值语句是否正确。斜杠后跟0表示其后为八进制,其值从0到7,因此C的赋值语句也是错误的。据此可以判断本题的正确答案应该为D。
转载请注明原文地址:https://jikaoti.com/ti/dXL0FFFM
0

最新回复(0)