互联网/IT行业面试题 · 问题拆解 · C
互联网/IT行业相关面试题,按题目行业基础数据聚合。
共 47588 道真题 · 当前筛选命中 51 道 · 更新 2026-08-05
筛选题目已选:问题拆解 · C
考察点
技术栈
第 1 题C/C++ 可以把一个数组直接赋值给另一个数组吗? 考察数组赋值规则与语言差异的基础知识第 2 题请说明C语言中static关键字在不同场景下的作用。 考察对C语言static关键字多场景语义的理解第 3 题char能不能存中文,为什么? 考察对字符编码和char类型存储能力的理解第 4 题int a=0; int i=sizeof(a++); i和a分别是多少? 考察sizeof操作符对表达式求值规则的掌握第 5 题在C语言中,给定一个包含int、char和double成员的结构体,如何计算其占用字节数?请说明内存对齐规则。 考察对结构体内存对齐规则的理解和实际计算能力第 6 题手写实现 atoi 函数,将字符串转换为整数。 考察字符串解析、边界处理和异常输入处理能力第 7 题请分别说明 static 关键字在 C 语言和 C++ 中的常见用法及作用。 考察对 static 在不同语言上下文中的语义理解与区分能力第 8 题给定一个以逗号分隔的纯数字字符串,请编写C代码,找到其中最大的数字并和第一个数字交换,最小的数字和最后一个数字交换,最后输出处理后的字符串。要求考虑时间和空间效率,并可以口述思路。 考察字符串解析、数值比较、交换和编程实现能力第 9 题对于一个3x3的二维数组int x[3][3],按行优先存储时,前五个元素分别是什么? 考察对二维数组按行优先存储顺序的理解第 10 题请用C语言编写一个函数,输入一个由空格、逗号或其他标点符号分隔的字符串,找出其中最长的单词并返回它。 考察C语言字符串处理、内存管理与边界条件处理第 11 题如果一个指针指向的结构体占100字节,对指针进行++操作,指针将移动到什么位置? 考察指针算术运算与数据类型大小的关系第 12 题使用指针访问二维数组,编写代码找出数组中的最大值并输出。 考察指针运算与二维数组本质的理解及编码实现第 13 题协程的底层实现原理是什么?请结合汇编和ucontext说明。 考察对协程切换底层机制的理解,包括上下文保存恢复与汇编细节第 14 题请分别说明 C 语言中 const、volatile 和 static 的作用,并各举一个典型使用场景。 考察对 C 语言存储类修饰符语义的理解与应用第 15 题C程序从源代码到可执行文件要经历哪些编译步骤? 考察C语言编译流程的完整理解,包括预处理、编译、汇编和链接第 16 题请解释 C/C++ 中 extern 关键字的作用和典型使用场景。 考察对 extern 关键字含义、链接性及声明与定义区别的理解第 17 题请用递归方式反转一个单链表,并说明其时间复杂度和空间复杂度。 考察递归理解和链表反转的边界处理第 18 题.data和.bss段的区别是什么? 考察对程序存储布局中初始化与未初始化数据段的理解第 19 题请说明在C/C++中,全局变量、局部变量、静态变量和常量分别存储在内存中的哪些区域,并简要说明各自的存储位置特点。 考察对C/C++内存分区模型的理解第 20 题请描述 malloc 分配 3KB 内存时,在内核态和用户态分别会发生什么过程? 考察对内存分配机制(用户态与内核态)的深入理解