当前位置:网站首页>百日刷题挑战--错题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
structA {
inta;
shortb;
intc;
chard;
};
structB {
inta;
shortb;
chard;
intc;
};答案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的地址处;
- 其他成员变量要与自身类型的整数倍地址处对齐
- 结构体的总大小为对齐数(默认对齐数与成员类型最大值的最小值)的整数倍
- 如果出现嵌套情况,嵌套结构体对齐到最大对齐数的整数倍
引用和指针的区别
- 引用必须初始化,不能被更改,指针不必须初始化,可以被更改
- 指针可以指向空,不存在指向空值的引用
- 对引用操作就是对目标变量直接操作,指针则是对指向的变量的间接操作
边栏推荐
- Shanxi: 1 death occurred in a coal mine safety accidents was ordered to halt production
- 使用Jedis连接linux上的redis
- 电力系统潮流计算(牛顿-拉夫逊法、高斯-赛德尔法、快速解耦法)【6节点 9节点 14节点 26节点 30节点 57节点】(Matlab代码实现)
- LabView---双通道示波器(内含信号发生器)
- TradingView_学习笔记
- 2022 CCF China Open Source Conference Notice (Fourth Round)
- 不爱生活的段子手不是好设计师|ONES 人物
- 干货:服务器网卡组技术原理与实践
- 让页面滚动到指定位置
- v-bind指令:设置元素的属性
猜你喜欢
随机推荐
Alluxio on Amazon EMR 集成实践
生成树协议(STP---Spanning Tree Protocol)
v-for指令:根据数据生成列表结构
视频转成gif动图怎么操作?仅需三步在线完成视频转gif
FTXUI按键和ROS2 CLI组合使用笔记(turtlesim+teleop)
Qt 绘图和绘图设备
不爱生活的段子手不是好设计师|ONES 人物
积分可以当钱用,阿里推出个人「碳账户」
最详解决:jupyter notebook不会自动打开浏览器问题
How to generate code using the Swift Package plugin
网易云信亮相LiveVideoStackCon2022,解构基于WebRTC的开源低延时播放器实践
山西:一煤矿发生死亡1人安全事故 被责令停产整顿
植物肉,为何在中国没法“真香”?
cube-studio配置镜像仓库并允许
剑指OfferⅡ 045.二叉树最底层最左边的值 dfs
Taurus.MVC WebAPI 入门开发教程4:控制器方法及参数定义、获取及基础校验属性【Require】。
pytorch 模型GPU推理时间探讨3——正确计算模型推理时间
C专家编程 第10章 再论指针 10.8 轻松一下---程序检验的限制
数学基础(五)最优化理论(最优化,无约束,有约束,拉格朗日乘子的意义,KKT条件)
一文带你拿下信号卷积—常见信号卷积










