字节跳动,c++客户端实习面经,已拿offer
1. new和malloc的区别
2. c++多态怎么实现,虚函数的原理
3. 堆和栈
4. 函数调用过程
5. “保存现场”具体指哪些
6. 函数调用涉及到的汇编指令
7. extern “C” 的作用
8 . C++代码到可执行程序的过程,详细描述四个阶段
9. 静态库和动态库的区别
10. 进程和线程
11. 地址空间是什么
12. 分段分页
13. 共享内存的原理
14. 用户态和内核态
15. 浏览器中输入一个url,到网页显示的过程描述
16. Tcp四次挥手过程,TIME_WAIT的作用
17. GET和POST的区别,HTTP还有哪些请求方法。
18. 端口是什么,位于哪一层
19. 算法题:两个链表求交点,leetcode 160
-
c++的智能指针了解吗,简单介绍一下
- new 和 malloc 的区别,free和delete的区别,如果free new 出来的内存会怎样?
- 同步io和异步io,谈谈你的理解
- io多路复用?介绍一下select,poll和epoll
- 中断,系统调用
- 进程调度算法
- 进程间通信方式
- 程序能不能输出,如果能输出结果是什么,不能输出改成能输出的并且说结果:
#include <bits/stdc++.h> using namespace std; struct A { int x; char y; void *z; }; int main() { cout << sizeof(A); A *a = 8; cout << ++a; return 0; }
- 算法题,每k个一组反转链表,leetcode 25
- 你用了递归,如果不用递归怎么求解?递归太深会怎样?
1.自我介绍
2.学习编程的方法
3.n个数,分别是1-n,现把他们分堆并给出两两关系例如2-5 1-5,给出关系的两个数必须在同一堆,问最大分堆数。
4.进阶,现从中选数,有关系的数必须同时取出,给定k,判断有没有总数为k的选法
5.介绍项目 我的项目自己写了个简单的操作系统内核,所以从操作系统启动开始,扯了比较久
6.网络中ip地址和mac地址的关系,为什么要有mac地址
7. 项目中具体的分页,内存管理的做法
8.你有什么要问的
hr: