C语言——static的三大用法

被称为面试爱考爱问题的它到底有何奥义

它难度不大并且非常常用,话不多说,直接开始

一、局部静态变量

定义

在函数内部使用static修饰的变量被称为局部静态变量,与普通的局部变量不同,局部静态变量在使用后不会被销毁,而是保持其值与存在。

参考代码

复制代码
#include <stdio.h>
void fun(int x)
{
    static int a=10;
}

使用场景

如果你需要重复使用一个变量又不想将它声明为全局变量的时候可以使用它。

静态变量有什么作用?

需要统计函数调用次数或记录某个状态的变化的场景下你就知道它的妙处啦~

二、全局静态变量

使用static修饰的全局变量只可以使其在声明所在的文件内可见,这样可以避免与其他文件中相同名称的变量产生冲突

三、静态函数

使用static修饰的函数叫做静态函数,声明所在的文件内部调用,无法被其他文件直接调用。这可以帮助你将一些辅助函数或者实用函数限制在特定文件范围内非常有用。

相关推荐
旖-旎5 分钟前
QT界面优化(6)
开发语言·c++·qt
AI科技星6 分钟前
基于超复数广义分形流形的电磁耦合与缪子反常磁矩几何理论
开发语言·平面·重构·概率论·量子计算·乖乖数学·全域数学
组合缺一11 分钟前
用 ChatModel 构建 LLM 驱动的 Java 应用
java·开发语言·ai·llm·solon·rag
wuyk55520 分钟前
25. 函数指针表:用查表替代 switch-case,打造高效可维护的嵌入式状态机
c语言·stm32·单片机·mcu·51单片机
零点零一26 分钟前
QT 5升级到 Qt 6 使用 Clazy 检查将 C++ 应用程序移植到 Qt 6
开发语言·c++·qt
caimouse31 分钟前
reactos 测试安装32位微信失败的日志
开发语言·微信
爱奥尼欧35 分钟前
轻量级可扩展日志框架-异步日志与系统集成
开发语言·数据库·c++·学习
大圣编程38 分钟前
python break语句
开发语言·前端·python
AI-好学者1 小时前
MCP企业运用全面知识点-基础篇
服务器·开发语言·网络·人工智能·python·架构
ch.ju1 小时前
Java程序设计(第3版)第四章——类加载
java·开发语言