1 / 8
文档名称:

CC笔试经典题目.doc

格式:doc   大小:28KB   页数:8页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

CC笔试经典题目.doc

上传人:在水一方 2019/6/16 文件大小:28 KB

下载得到文件列表

CC笔试经典题目.doc

相关文档

文档介绍

文档介绍:?charstr1[]="abc";charstr2[]="abc";constcharstr3[]="abc";constcharstr4[]="abc";constchar*str5="abc";constchar*str6="abc";cout<<boolalpha<<(str1==str2)<<endl;//输出什么?cout<<boolalpha<<(str3==str4)<<endl;//输出什么?cout<<boolalpha<<(str5==str6)<<endl;//输出什么?答:分别输出false,false,true。str1和str2都是字符数组,每个都有其自己的存储区,它们的值则是各存储区首地址,不等;str3和str4同上,只是按const语义,它们所指向的数据区不能修改。str5和str6并非数组而是字符指针,并不分配存储区,其后的“abc”以常量形式存于静态数据区,而它们自己仅是指向该区首地址的指针,相等。?voidUpperCase(charstr[])//将str中的小写字母转换成大写字母{for(size_ti=0;i<sizeof(str)/sizeof(str[0]);++i)if('a'<=str[i]&&str[i]<='z')str[i]-=('a'-'A');}charstr[]="aBcDe";cout<<"str字符长度为:"<<sizeof(str)/sizeof(str[0])<<endl;UpperCase(str);cout<<str<<endl;答:函数内的sizeof有问题。根据语法,sizeof如用于数组,只能测出静态数组的大小,无法检测动态分配的或外部数组大小。函数外的str是一个静态定义的数组,因此其大小为6,函数内的str实际只是一个指向字符串的指针,没有任何额外的与数组相关的信息,因此sizeof作用于上只将其当指针看,一个指针为4个字节,因此返回4。++内建型别A和B,在哪几种情况下B能隐式转化为A?答::publicA{……}//B公有继承自A,{operatorA();}//{A(constB&);}//A实现了non-explicit的参数为B(可以有其他带默认值的参数)&operator=(constA&);//赋值操作,虽不是正宗的隐式类型转换,?structTest{Test(int){}Test(){}voidfun(){}};voidmain(void){Testa(1);();Testb();();}答:变量b定义出错。按默认构造函数定义对象,不需要加括号。?cout<<(true?1:"1")<<endl;答:三元表达式“?:”问号后面的两个操作数必须为同一类型。,为什么?unsignedintconstsize1=2;charstr1[size1];unsignedinttemp=0;cin>>temp;unsignedintconstsize2=temp;ch