牛客网错题笔记:C/C++专项 :1-10

1 32位平台上struct{unsigned char a,int b,short c}s;请问s的起始地址下面说法正确的是哪一个?()

正确答案应该是四字节对齐,因为起始地址应该按照结构体中最大类型的大小对齐。

2  请问以下说法哪个是正确的:

对于选项A,如果定义了有参数的构造函数时,编译器不再提供无参数的默认构造函数。

选项B:拷贝构造函数可以定义为删除的,即为没有。

选项D;析构函数只能有一个,因此,正确答案为C

3 浮点数算数标准是以下哪一个?

A:posix             B:c99          C:c89         D:ieee754

这种题没有任何意义,为了笔试。正确答案为D。

4 以下表达式的正确结果是:

首先b=(a=-1),即b=-1,三目运算符条件为真(不为0都是真),因此b=2,

c=(a=0),a=0,为假,因此a=3,正确答案为C

5 下面哪个说法是正确的()(多项选择)

浮点类型的单精度值具有 4 个字节,包括一个符号位、一个 8 位 二进制指数和一个 23 位尾数。由于尾数的高顺序位始终为 1,因此它不是以数字形式存储的。此表示形式为 float 类型提供了一个大约在 -3.4E+38 ~ 3.4E+38 之间的范围。

正确答案:ABCD

6 以下程序段输出的结果是()

答案为:5+4+3+2+1+1=16,最后的f(0)也返回1.

7 以下程序段执行后的结果是();

答案为:1,2,15,因为short为两个字节大小,因此第二次输出2.

8 关于C++语言中虚函数描述正确的有(不定项选择)

对于选项A,因此虚函数是依赖于对象的,在构造函数执行完成之前,对象不存在,因此构造函数不可以为虚函数。

对于选项B,析构函数可以是纯虚,不过需要在父类中添加函数体!!!

选项C同A,选项D,在C++中,struct和class一样,是可以定义虚函数的。

9 c++中,声明const int i,是在哪个阶段做到 i只可读的?

答案为编译阶段,const说明变量是常量,常量存储在常量区,在编译时就直接将其替换成相应的引用。

10 对于以下程序,哪个函数的调用会有问题?

答案为FuntionC(),因为函数本质上是通过类对象的虚表进行访问,而且类的成员函数除了虚函数,其他都不存储在类当中,因此类对象不存在的情况下,无法使用虚函数,其他函数都可以正常访问(前提是这些函数都没有存取类对象的成员变量) 。

原创文章 162 获赞 95 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_42214953/article/details/106129512