C语言高频面试题及详细答案(企业真实版).docxVIP

  • 1
  • 0
  • 约3.76千字
  • 约 6页
  • 2026-08-23 发布于河北
  • 举报

C语言高频面试题及详细答案(企业真实版).docx

C语言高频面试题及详细答案(企业真实版)

一、C语言基础概念题

1、简述C语言变量的作用域和生命周期

答案:

变量作用域指变量可以被访问的代码范围,生命周期指变量在内存中存在的时间。

1.局部变量:定义在函数或代码块内部,作用域仅限当前代码块,程序执行到代码块时开辟内存,执行结束立即释放,生命周期随代码块结束终止,未初始化时是随机脏值。

2.全局变量:定义在所有函数外部,作用域覆盖整个源文件,可通过extern跨文件访问,程序启动分配内存,程序退出才释放,默认初始值为0。

3.静态局部变量(static修饰):作用域仍为局部,但是生命周期和全局变量一致,程序运行期间一直存在,只会初始化一次,保留上一次的值。

2、const关键字的用法和作用

答案:

const用来修饰只读变量,禁止修改变量的值,主要四种常用场景:

1.constinta;修饰普通变量,变量a只读,不能赋值修改。

2.constint*p;指针指向的值不可改,指针本身的地址可以改,常用于函数参数,保护数据不被篡改。

3.int*constp;指针地址不可改,指向的数据可以修改。

4.constint*constp;指针地址和指向的数据都不可修改。

额外作用:编译器会对const变量做优化,节省内存,同时代码可读性更高,明确常量不可修改的特性。

3、#define和const的

文档评论(0)

1亿VIP精品文档

相关文档