嵌入式面试题2-Static关键字

该面试题是嵌入式面试中比较常见的一个面试题,也是一个必会题,答案如下:

Static关键字,表示静态的,在C语言中的作用,是修改生命周期和限定作用域,
一般用来修饰局部变量、全局变量和函数
1、修饰局部变量 修改了局部变量的生命周期
没有用static修饰的局部变量,生命周期从变量定义开始,到变量所在作用域代码执行完毕结束。
用static修饰的局部变量,生命周期存在于程序的整个运行期间,知道程序运行结束,变量才被回收,所以过多使用静态局部变
量会造成内存泄漏
2、修饰全局变量 限定了作用域
没有使用static修饰的全局变量,作用域是整个程序(即所有的.c文件),只不过跨文件使用时,需要使用extern关键声明一下
使用static修饰的全局变量,作用域被限定在当前.c文件,不可以跨文件使用
3、修饰函数 限定了作用域
没有使用static修饰的函数,作用域是整个程序(即所有的.c文件),只不过跨文件使用时,需要使用extern关键声明一下
使用static修饰的函数,作用域被限定在当前.c文件中调用,不可以跨文件调用

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容