需要该PDF文档的朋友扫码关注下方二维码【入门小站】,回复 「1006」 四个字自取
公众号【C语言与CPP编程】小编连夜整理了68道C语言和C++相关的面试题,文末有PDF版详细答案,有需要的小伙伴们可以自取,面试前必看必背。
1 变量的声明和定义有什么区别
2 简述#ifdef、#else、#endif
和#ifndef
的作用
3 写出int 、bool、 float
、指针变量与 “零值” 比较的if
语句
4 结构体可以直接赋值吗
5sizeof
和strlen
的区别
6 C 语言的关键字static
和 C++ 的关键字static
有什么区别
7 C 语言的malloc
和 C++ 中的new
有什么区别
8 写一个 “标准” 宏 MIN
9 ++i
和i++
的区别
10 volatile
有什么作用
11 一个参数可以既是const
又是volatile
吗
12 a
和&a
有什么区别
13 用 C 编写一个死循环程序
14 结构体内存对齐问题
15 全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的?
16 简述 C、C++ 程序编译的内存分配情况
17 简述strcpy、sprintf
与memcpy
的区别
18 请解析(*(void (*)( ) )0)( )
的含义
19 C 语言的指针和引用和 c++ 的有什么区别?
20 typedef
和define
有什么区别
21 指针常量与常量指针区别
22 简述队列和栈的异同
23 设置地址为0x67a9
的整型变量的值为0xaa66
24 编码实现字符串转化为数字
25 C 语言的结构体和 C++ 的有什么区别
26 简述指针常量与常量指针的区别
27 如何避免 “野指针”
28 句柄和指针的区别和联系是什么?
29 new/delete
与malloc/free
的区别是什么
30 说一说extern“C”
31 请你来说一下 C++ 中struct
和class
的区别
32 C++ 类内可以定义引用数据成员吗?
33 C++ 中类成员的访问权限
34 什么是右值引用,跟左值又有什么区别?
35 面向对象的三大特征
36 说一说 c++ 中四种cast
转换
37 C++ 的空类有哪些成员函数
38 对 c++ 中的smart pointer
四个智能指针:shared_ptr,unique_ptr,weak_ptr,auto_ptr
的理解
39 说说强制类型转换运算符
40 谈谈你对拷贝构造函数和赋值运算符的认识
41 在 C++ 中,使用 malloc
申请的内存能否通过delete
释放?使用new
申请的内存能否用free
?
42 用 C++ 设计一个不能被继承的类
43 C++ 自己实现一个String
类
44 访问基类的私有虚函数
45 对虚函数和多态的理解
46 简述类成员函数的重写、重载和隐藏的区别
47 链表和数组有什么区别
48 用两个栈实现一个队列的功能
49 vector
的底层原理
50 vector
中的reserve
和resize
的区别
51 vector中的
size和
capacity 的区别
52 vector中
erase方法与
algorithn中的
remove` 方法区别
53 vector
迭代器失效的情况
54 正确释放vector
的内存(clear(), swap(), shrink_to_fit())
55 list
的底层原理
56 什么情况下用vector
,什么情况下用list
,什么情况下用 deque
57 priority_queue
的底层原理
58 map 、set、multiset、multimap
的底层原理
59 为何map
和set
的插入删除效率比其他序列容器高
60 为何map
和set
每次Insert
之后,以前保存的iterator
不会失效?
61 当数据元素增多时(从 10000 到 20000),map
的set
的查找速度会怎样变化?
62 map 、set、multiset、multimap
的特点
63 为何map
和set
的插入删除效率比其他序列容器高,而且每次insert
之后,以前保存的iter
64 为何map
和set
不能像vector
一样有个reserve
函数来预分配数据?
65 set
的底层实现实现为什么不用哈希表而使用红黑树?
66 hash_map
与map
的区别?什么时候用hash_map
,什么时候用map
?
67 迭代器失效的问题
68 STL
线程不安全的情况
需要该PDF文档的朋友扫码关注下方二维码【入门小站】,回复 「1006」 四个字自取
点击下面标题即可获取对应资料
LeetCode刷题开源手册
LeetCode题解【java语言实现】
Java基础核心总结PDF下载
程序员简约简历模板
C语言C++常见面试题【含答案】
设计模式的JAVA实现
3669页vim参考手册
阿里巴巴Java开发手册
阿里云ECS运维Linux系统诊断
Docker速查手册
Linux学习笔记【强悍总结值得一看】
shell简明教程
前端(HTML5,CSS3,Vue,React,Angular,跨域)面试大全(含答案)
【Linux常用命令速查手册】关注【入门小站】,后台回复 「1001」 自取。