C语言——static的三大用法

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

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

一、局部静态变量

定义

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

参考代码

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

使用场景

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

静态变量有什么作用?

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

二、全局静态变量

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

三、静态函数

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

相关推荐
逝水无殇6 小时前
C# 反射详解
开发语言·后端·c#
xlxxy_7 小时前
sap获取批次特性报表
java·linux·开发语言·前端·数据库·abap·mm
北冥you鱼7 小时前
Go语言常用包使用指南:从标准库到第三方利器
开发语言·microsoft·golang
俺不中嘞7 小时前
python常用函数
开发语言·python
欢喜躲在眉梢里7 小时前
用飞算Java做了一套新能源充电运营管理系统:把站点、设备、订单拆成可运营的微服务
java·开发语言·微服务·ai编程·技术分享·java开发·飞算javaai炫技赛
捷瑞电子工坊7 小时前
C语言取地址符 `&` 极简教程
c语言·c语言基础·取地址符·指针入门
এ慕ོ冬℘゜7 小时前
深入理解 JavaScript 事件对象:从 target 到 preventDefault 的实战指南
开发语言·前端·javascript
学逆向的7 小时前
汇编——修改EIP的值
开发语言·汇编·网络安全
weixin_422329317 小时前
AgentScope Java ReActAgent 核心循环深度解析
java·开发语言·人工智能
weilaieqi18 小时前
行业前列!CASAMANIA HORM富森美高端意式沙发标杆
开发语言