后端岗位面试题 · 问题拆解 · C
题库中标记为“后端”的结构化面试题。
共 89928 道真题 · 当前筛选命中 153 道 · 更新 2026-08-05
筛选题目已选:问题拆解 · C
考察点
技术栈
第 41 题请详细解释C语言中static关键字的作用,包括修饰变量和函数时的不同行为,并举例说明典型应用场景。 考察对C语言static关键字在生命周期、作用域和链接属性上的理解第 42 题请描述一个 C 程序进程的典型内存空间布局。 考察对进程内存分段、各区域用途及生命周期差异的理解第 43 题设计并实现一个简单的内存分配器,要求写出分配和回收的方法,并确保代码可运行。 考察内存管理的基本原理、分配回收策略及代码实现能力第 44 题sizeof 运算符在什么时候求值?能否用它来计算动态分配内存的大小? 考察 sizeof 的编译期求值特性及其与运行时内存分配的边界第 45 题请解释 C/C++ 中 extern 关键字的作用和典型使用场景。 考察对 extern 关键字含义、链接性及声明与定义区别的理解第 46 题请说明结构体 struct Test { int a; char b; short c; }; 在内存中的布局与大小,并解释可能的对齐方式。 考察结构体内存对齐规则、成员偏移计算及平台差异意识第 47 题手撕:用C语言实现memcpy函数的功能,要求更加安全,除了逐字节复制还可以怎么做,如何提高效率? 考察内存拷贝的边界处理、性能优化与安全考量第 48 题请说明 C/C++ 中结构体对齐的规则,并计算一个结构体在默认对齐、1 字节对齐、2 字节对齐和 4 字节对齐时的字节数。 考察结构体内存布局、对齐规则和字节数计算能力第 49 题请说明C语言中全局变量、静态变量和局部变量在存储位置、生命周期和作用域上的主要区别。 考察对C语言变量存储类别、生命周期与作用域的准确理解第 50 题请介绍一个你用 C 语言完成的项目,包括项目背景、你的具体职责、遇到的技术难点以及最终成果。 考察 C 语言实践能力、项目经验深度及问题解决能力第 51 题在C/C++中,const和#define在内存占用上有什么区别?这是一个常见的陷阱题,请分析。 考察对const和#define在内存模型中的理解及其区别第 52 题#define和typedef的区别 考察C/C++中宏定义与类型别名的本质差异第 53 题请详细介绍C语言程序在GCC中的完整编译过程。 考察对编译原理和GCC工具链实际流程的理解第 54 题请描述 malloc 分配 3KB 内存时,在内核态和用户态分别会发生什么过程? 考察对内存分配机制(用户态与内核态)的深入理解第 55 题请解释 backtrace 的实现原理,以及它依赖哪些系统调用? 考察对函数调用栈结构、栈回溯机制及系统调用实现的理解第 56 题请解释指针常量与常量指针的区别。 考察C/C++中指针与常量的复合语义理解第 57 题char能不能存中文,为什么? 考察对字符编码和char类型存储能力的理解第 58 题请解释静态变量(static variable)的作用域(scope)和生命周期,以及它与普通局部变量、全局变量的区别。 考察对静态变量作用域与生命周期概念的理解及辨析能力第 59 题请说明 C 语言中指针与数组的区别,以及它们各自在内存中的存储位置。 考察对 C 语言指针与数组核心概念及内存布局的理解第 60 题new和free的时候,free怎么知道要释放多大内存空间呢 考察对C和C++内存管理底层机制的理解