目录
单项选择题:
第1题
在 C++中,下面哪个关键字用于声明一个变量,其值不能被修改?()
A.unsigned
B.const
C.static
D.mutable
【参考答案】B
【知识点】关键字
【解析】
unsigned:无符号变量,默认是非负数
const:恒定变量,无法被修改
static:静态局部变量,类似于全局变量
mutable:可变的变量。mutable也是为了突破const的限制而设置的。被mutable修饰的变量(mutable只能用于修饰类的非静态数据成员),将永远处于可变的状态
第2题
八进制数12345670(8进制)和07654321(8进制)的和为()。
A.222222218
B.211111118
C.221111118
D.222222118
【参考答案】D
【知识点】八进制计算
【解析】逢8进1,对齐计算就好了。
第3题
阅读下述代码,请问修改 data 的 value 成员以存储3.14,正确的方式是()。
union Data{
int num;
float value;
char symbol;
};
union Data data;
A.data.value = 3.14;
B.value.data=3.14;
C.data->value = 3.14;
D.value->data = 3.14;
【参考答案】A
【知识点】联合体
【解析】union是联合体,它内部只能有一个变量起作用,用法和struct类似,所以答案选A,其中CD选项的“->”用于指针。
第4题
假设有一个链表的节点定义如下:
struct Node{
int data;
Node* next;
};
现在有一个指向链表头部的指针:Node* head,如果想要在链表中插入一个新节点。其成员 data 的值为42,并使新节点成为链表的第一个节点,下面哪个操作是正确的?()
A. Node* newNode = new Node; newNode -> data = 42; newNode -> next = head; head = newNode;
B.Node* newNode = new Node; head -> data = 42; newNode -> next = head; head = newNode;
C.Node* newNode = new Node; newNode -> data = 42;hea

最低0.47元/天 解锁文章
3768

被折叠的 条评论
为什么被折叠?



