当前位置:网站首页>百日刷题挑战--错题01day
百日刷题挑战--错题01day
2022-08-10 16:39:00 【不虚此行-Rui】
1.在 32 位编译器上,设有定义
1
char
*str1 =
"Hello"
, str2[] =
"Hello"
;
则以下语句
1
printf
(
"%d %d"
,
sizeof
(str1),
sizeof
(str2));
的输出结果是(6,6)
解析:
str1是指针 大小为4字节
str2是字符数组 大小为6个字节(包含/0);
2.在C++中,定义结构体类型struct时,不能定义成员函数,只有class可以定义成员函数。
解析:错误 c语言中struct不可以定义成员函数,c++可以,包括继承(面试题 : struct和class的区别)
3.下列程序输出什么?
#include <iostream> using namespace std; class A { public: A() { cout << "1"; } A(A &a) { cout << "2"; } virtual ~A() { cout << "3"; } }; class B: public A { public: B() { cout << "4"; } B(B &b) { cout << "5"; } ~B() { cout << "6"; } }; int main() { A *pa = new B(); delete pa; return 0; }
答案: 1 4 6 3
解析:在继承中构造和析构顺序
B继承了A,所以先构造A再构造B,然后先析构B在A (这里没有拷贝)
3.下列表达式结果()----strs *ptrs分别是?
1
2
3
4
5
6
std::string str1(
"trend"
);
std::string str2(
"micro"
);
std::string& strs = str1;
std::string* ptrs = &str1;
strs = str2;
ptrs = &str2;
strs="micro" *ptrs="micro"
解析:strs是str1的别名 strs=str2 相当于 str1=str2; (str1的内容也被修改)
ptrs指针指向str2可以被改变(面试题:引用和指针的区别)
在32位系统环境,编译选项为4字节对齐,那么sizeof (A)和sizeof (B)是______。
1
2
3
4
5
6
7
8
9
10
11
12
13
struct
A {
int
a;
short
b;
int
c;
char
d;
};
struct
B {
int
a;
short
b;
char
d;
int
c;
};
答案16 12
解析: 结构体第一个成员从偏移量0开始,之后的成员变量从对齐数的整数倍开始
最后的结果也是对齐数的整数倍
面试题:结构体对齐方式
关于纯虚函数和抽象类的描述中,( )是错误的。
A.纯虚函数是一种特殊的虚函数,它没有具体的实现; B.抽象类是指具有纯虚函数的类; C.一个基类声明有纯虚函数,该基类的派生类一定不再是抽象类; D.抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出;答案:c
解析:
含有纯虚函数的类是抽象类,不能生成对象,只能派生.派生的类的虚函数没有被实现,那么他的派生类还是抽象类,。如果派生类中给出了基类纯虚函数的实现,则该派生类就不再是抽象类了
假设C语言程序里使用malloc申请了内存,但是没有free掉,那么当该进程被kill之后,操作系统会()
正确答案: D 你的答案: A (错误)
A.内存泄露B.segmentation faultC.core dumpD.以上都不对内存泄漏只发生在程序运行中
关于C++中的友元函数说法正确的是()
正确答案: B C 你的答案: A B C (错误)
A.友元函数需要通过对象或指针调用B.友元函数是不能被继承的C.友元函数没有this指针D.友元函数破环了继承性机制解析:友元函数不具有传递性,继承性,双向性
也不具有this指针,成员函数的概念
面试题:
struct和class的区别?
- struct默认访问权限public,class默认访问权限private
- 默认继承权限不同 struct默认继承权限public class默认继承权限private
结构体对齐方式
- 第一个成员在结构体偏移量为0的地址处;
- 其他成员变量要与自身类型的整数倍地址处对齐
- 结构体的总大小为对齐数(默认对齐数与成员类型最大值的最小值)的整数倍
- 如果出现嵌套情况,嵌套结构体对齐到最大对齐数的整数倍
引用和指针的区别
- 引用必须初始化,不能被更改,指针不必须初始化,可以被更改
- 指针可以指向空,不存在指向空值的引用
- 对引用操作就是对目标变量直接操作,指针则是对指向的变量的间接操作
边栏推荐
猜你喜欢
神经网络的图像识别技术,神经网络识别图像原理
电力系统潮流计算(牛顿-拉夫逊法、高斯-赛德尔法、快速解耦法)【6节点 9节点 14节点 26节点 30节点 57节点】(Matlab代码实现)
数学基础(五)最优化理论(最优化,无约束,有约束,拉格朗日乘子的意义,KKT条件)
docker中安装mysql
v-bind指令:设置元素的属性
电力系统潮流计算与PowerWorld仿真(牛顿拉夫逊法和高斯赛德尔法)(Matlab实现)
一文带你拿下信号卷积—常见信号卷积
Meaning of CDF graph
PNG如何变gif?教你一招png秒变gif动图的方法
#夏日挑战赛#【ELT.ZIP】啃论文俱乐部——学术科研方法论沉淀辑
随机推荐
积分可以当钱用,阿里推出个人「碳账户」
【科研】常见火灾数据集
Redis存储验证码
JWT 实现登录认证 + Token 自动续期方案
重庆新壹汽与一汽集团达成新能源项目战略合作,赋能“碳中和”创造“碳财富”
被大厂面试官参考的Redis笔记,堪称Redis面试天花板
自适应模糊神经网络与bp神经网络的区别
FTXUI基础笔记(hello world)
视频转成gif动图怎么操作?仅需三步在线完成视频转gif
【硬件架构的艺术】学习笔记(4)流水线的艺术
1001 A+B Format(字符串处理)
HTTP学习——协议与术语、HTTP、缓存、Cookie
3 年 CRUD 从 8K 涨到 28K,谁知道这4个月我到底经历了什么?
植物肉,为何在中国没法“真香”?
The sword refers to OfferⅡ 045. The bottommost leftmost value of the binary tree dfs
babylonjs shader
如何将静图变gif动图?教你jpg合成gif的方法
FTXUI按键和ROS2 CLI组合使用笔记(turtlesim+teleop)
软件工程基础知识--需求分析
C语言按位运算符如何使用