后端岗位面试题 · 问题拆解 · C
题库中标记为“后端”的结构化面试题。
共 89928 道真题 · 当前筛选命中 153 道 · 更新 2026-08-05
筛选题目已选:问题拆解 · C
考察点
技术栈
第 1 题在C语言中,数组指针和指针数组有什么区别?请结合一个具体表达式说明。 考察C语言中指针与数组结合时的类型区分与声明解析能力第 2 题请解释 malloc 函数在底层是如何分配内存的,包含其涉及的关键系统调用和内核机制。 考察对内存分配底层机制和系统调用链路的理解第 3 题请手写双向链表的插入功能,并说明测试用例的设计思路。 考察双向链表基本操作实现与测试用例设计能力第 4 题请阐述 static 关键字在 C 语言中的作用。 考察对 static 作用于局部变量、全局变量及函数时的存储与作用域规则的理解第 5 题函数指针和指针函数有什么区别? 考察对C语言中指针与函数组合的语法和语义理解第 6 题请解释为什么程序需要 main 函数,以及在 C/C++ 中 main 函数有哪些特殊约定? 考察对程序入口、运行时环境和语言约定的理解第 7 题请解释C/C++中结构体字节对齐的规则及其影响,并举例说明如何计算一个结构体的sizeof值。 考察对结构体内存布局、对齐规则和性能影响的深层理解第 8 题malloc 申请的内存如何真正映射到物理内存? 考察对虚拟内存、缺页异常和物理内存分配机制的理解第 9 题请描述从源代码到可执行文件的编译和链接过程。 考察对编译、汇编、链接各阶段职责的理解第 10 题malloc分配的是虚拟内存还是物理内存?什么时候会分配物理内存? 考察虚拟内存与物理内存区分及缺页中断机制的理解第 11 题static修饰局部变量、全局变量、函数和类各有什么特点? 考察对C/C++中static关键字在不同作用域下语义的理解第 12 题一个函数f(int a,int b),其中a和b的地址关系是什么? 考察函数参数传递原理与内存布局理解第 13 题请说明一个包含 int 和 char 类型成员的结构体在 C 语言中的内存布局,并解释可能存在的内存对齐规则。 考察对结构体内存对齐、成员偏移与填充的理解第 14 题C和C++中内存管理的核心区别是什么?请举例说明。 考察C与C++内存管理机制及面向对象特性第 15 题结合虚拟地址空间概念,描述 malloc 从分配虚拟地址到建立物理映射的完整流程。 考察虚拟内存管理、malloc 实现机制与缺页中断的完整链路理解第 16 题在 C 语言中,结构体在内存中是如何对齐的?请说明影响对齐的因素以及你如何计算结构体的大小。 考察结构体内存布局、对齐规则及大小计算能力第 17 题在 32 位系统上,一个 int 和一个 double 作为结构体成员时,内存对齐规则是怎样的? 考察结构体内存对齐规则及实际内存布局计算第 18 题请描述从头文件A和源文件B到生成可执行文件的完整编译链接过程。 考察对C/C++编译与链接流程的理解第 19 题请描述C/C++源文件编译成ELF可执行文件经历的各个阶段,并说明每个阶段产生的中间产物文件名后缀。 考察对编译链接流程全链路及其中间产物命名规范的掌握第 20 题请说明 C/C++ 中指针加减运算的语义,以及基本数据类型在内存中的存储结构。 考察对指针算术、类型大小和内存布局的理解