字节暑期实习一面 C++ 后端面经

05-12 这一周的面试。
字节暑期实习一面 C++ 后端,1 小时 40 分钟。有两三个聊天风格的问题。手撕代码做得一般。
发面经攒人品

自我介绍
面试官问 CTF 比赛是什么,我介绍比赛内容,说了一个 CTF 签到题。
实验室研究方向

项目和八股(40 分钟多)

项目是一个重写 muduo 库,一个功能不多的 web server。面试官没有问 web server。我想写个协程库了。在做聊天项目,没做完。

1. 介绍 muduo 网络库
2. 为什么要有 muduo 库?它有什么价值?进一步引导,线上为什么要用 muduo 库,为什么不用其它方式,比如多线程?
   (答完这里我掉线一次)
3. 对 epoll 原理的理解
4. epoll 相关的内核数据结构
5. linux 上的进程,线程,协程(答了 linux 的 task_struct 记录一个进程的信息,线程也是一个 task struct,它们共享内存地址空间,等等)
6. 操作系统调度的最小单位是什么?
7. 一个进程的地址空间是怎么样的?
8. 一个进程是怎么跑起来的?比如,在终端输入 top 命令,发生了什么?
9. fork 系统调用有几个返回值?追问父进程中 fork 的返回值
10. 一个进程把内存用光了会发生什么事?
11. 你在 linux 上用什么软件?怎么使用,用到什么功能?追问 qemu 怎么拉起一个虚拟机。问,是自己折腾的吗?
    - docker 的原理?追问,只用 namespace 就可以了吗?
    - 为什么用 podman
12. 在浏览器中输入一个网址,到网页展示出来,这个过程发生了什么?
13. dns 查询过程
14. 网络包到网卡之后,是怎么到用户进程的?
15. 进程阻塞在 read 系统调用,有数据时怎么唤醒?你有看过代码吗?

写代码题(40 分钟)

在飞书里面的编辑器,像是一个 vscode,有代码自动补全。

- 代码一:求有 n 个字母的集合的所有子集。比如,{a, b, c} 的所有子集有 8 个。(讲思路,实现代码,10 分钟多)
- 代码二:三数之和(25 分钟多,一开始不记得双指针的解法,只好自己拿一个 map,一个 set,来保证唯一性。写完讲思路,问有没有其它方法,把双指针方法凑出来了)

反问
部门工作内容
有几轮面试
部门技术栈
面试官问是第几次面试,有其它 offer 吗,能实习几个月

#面试问题记录##字节一面##牛客AI配图神器#
全部评论
佬我项目准备的也是muduo库,不过我是学的代码随想录星球里现成的muduo网络库项目,这种会被面试官嫌弃吗
点赞 回复 分享
发布于 2025-05-31 00:13 浙江
大佬,字节的c++岗位需求多吗,具体是做什么业务的呢
点赞 回复 分享
发布于 2025-05-29 12:53 黑龙江
mark收藏
点赞 回复 分享
发布于 2025-05-23 00:47 上海

相关推荐

点赞 评论 收藏
分享
Ryan188:我觉得你简历最核心的问题就是太大众化。 你要有一个认知就是,如果你是面试官,你是HR,其实他们每天都会收到非常多大量重复的像你这种简历。 就是说你的项目不是一个真实的上线的项目,可能是从网上学习而来的,或者是直接copy别人的项目,没有新意,没有展现出你自己对技术的思考,而且你的学历也不占优,自然而然就很难有人去选择你。 所以要做的实际上是差异化方向的工作,也就是“给我一个选择你的理由”,比如最近很火的ai,你可以写一个ai相关项目比如问答应用或者mcp编写或者agent搭建,需要你先花点时间学习,34天吧,展现你对这方面相较于其他人特有的思考; 或者写相关技术博客输出一些技术内容,有具体可以量化的成果等等去增加你的竞争力。 但以上这些都是后话,我去年在你这个时候也是没人理我,咱们双非学历也没实习,难找也正常,我当时整个3月份都没人鸟我,直到有个新招的岗位,很缺人很急,流程很快,所以我一下子进去了,所以运气方面也很重要,需要你一直坚持喝复盘,直到看到光明,加油兄弟
简历被挂麻了,求建议
点赞 评论 收藏
分享
评论
12
54
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务