哔哩哔哩 C/C++ 开发工程师(多媒体方向)一二面(已凉)
内推的, 直接免了笔试, 8.23晚上面试一个小时
24号上午通知的二面
8.23 哔哩哔哩 C/C++ 开发工程师一面(多媒体方向)(45分钟面经, 15分钟写代码)
- 自我介绍
- 一个
int8_t
类型的数转换为uint8_t
的值是多少, 例如-1
转换为uint8_t
是多少, 一个int8_t
类型的-2
加上uint8_t
类型的8
答案是6
吗 C++
空类会默认生成那些函数- 如何不使用额外空间交换两个变量的值, 说了相加, 又问有什么弊端, 又答了缺点以及答了异或
new
,malloc
,delete
,free
的关系和区别- 数组和指针的区别,
sizeof(char *)
和sizeof(a[10])
(a为char类型数组) C++
中的多态, 如何实现的, 虚函数和虚函数表, 如何禁止使用构造函数, 应该如何使用这种类C++
引用一个C语言的库应该如何操作,C++
和C语言编译出来的函数有什么区别, 答了C++
函数可以重载, 因为重载会导致有区别vector
,list
和map
插入元素的时间复杂度- 内存泄露和内存溢出
- 三次握手四次挥手, 如果四次挥手最后没有等待
2MSL
会发生什么, 为什么在接收到客户端的FIN
包的时候就立马返回ACK
包 select
,poll
和epoll
- 进程间通信方式,
OSI
七层模型简介, 传输层的功能, 表示层的功能 - 常量指针和指针常量
- 当遍历
list
的时候如果删除了某一个元素erase
, 会出现什么问题 - 手撕代码, 两个经典题目, 第一个题目是层序遍历二叉树, 写出二叉树的定义和核心代码即可, 第二个题目是找到链表的倒数第k个节点,写出链表定义以及核心代码即可
- 能否用变量来指定数组的长度, 为什么, 例如:
int a = 4; int b[a];
, 说了不合法, 必须为const
才可以
问完就一个小时了, 也没有反问环节, 希望能过
8.26 C/C++ 开发工程师二面(多媒体方向)(30分钟, 挂)
- 自我介绍, 项目中的挑战介绍一下, 实验室项目的应用场景
- 代码题, 口述的题目, 一个二维矩阵中只有0和1, 然后输出一个大小相等的矩阵, 矩阵每一个位置的值为最近的0的距离长度(没想出来, 面试官提示之后还是没有做出来, 最后是
bfs
, 首先将所有为0的位置入队, 然后出队的时候将上下左右位置检索) - 微服务与无服务的区别
- 智能指针的原理, 和其他有
GC
的编程语言相比的优缺点 - 如何看待B站, 为什么来
反问一般是三轮面试, 过了不一会儿就流程终止了
#面经##C/C++##哔哩哔哩#