- 0
- 0
- 约3.42千字
- 约 6页
- 2026-08-23 发布于河北
- 举报
C语言高频面试题(真实面试版+详细答案)
一、基础语法面试题
1、简述C语言中static关键字的作用
标准答案:static主要有三个核心作用,分场景使用:
1)修饰局部变量:改变变量的生命周期,普通局部变量函数结束就销毁,static局部变量程序运行期间一直存在,只会初始化一次,下次调用函数保留上一次的值。
2)修饰全局变量:限制作用域,普通全局变量可以跨文件访问,static全局变量只能在当前源文件使用,其他文件无法引用。
3)修饰函数:将函数变为内部函数,仅当前文件可调用,外部文件无法调用,常用于封装私有工具函数。
2、const关键字的用法和意义
标准答案:const用来修饰只读变量,防止数据被修改,提升代码安全性,常用三种场景:
1)constinta=10;//变量a只读,不能二次赋值
2)constint*p;//指针指向的值不可改,指针本身地址可以改
3)int*constp;//指针地址不可改,指向的值可以修改
补充:函数参数用const修饰,避免函数内部误修改传入的实参数据,是工程代码常用规范。
3、#define和const的区别
标准答案:
1)预处理阶段vs编译阶段:#define是预处理宏替换,纯文本替换,不做类型检查;const是编译阶段处理,有严格数据类型校验。
2)内存占用:#define不分配内存,
原创力文档

文档评论(0)