【学习笔记】C语言中的static关键字

本文介绍了C语言中的static关键字,讲解了如何用static修饰变量,包括静态局部变量和静态全局变量的特性。静态局部变量的生命周期从程序启动到结束,仅初始化一次;静态全局变量限制其作用域,避免全局变量污染。
摘要由CSDN通过智能技术生成

提示:本文仅供C语言初学者参考使用,文章代码部分来源网络,如有侵权,请尽快私信删除!


前言

今天有人问了博主局部静态变量和外部静态变量,想了好久没有回过神,静态变量什么时候还分局部和外部,但是我仔细看了看我的C语言大红书(学校教材),仔细看到半夜我才勉强明白,这不就是static这个关键字在局部变量和全局变量的两种用法嘛!!!
闲话少叙,正片开始!


一、关键字static是什么?

static顾名思义就是静态的,何为静态,就是不变!加一个主语,C语言中什么可以放在它前面?一下子就可以想到的就是变量和函数。变量不变,函数不变。自然而然地,static就可以修饰变量和函数。而变量又可以分为局部变量和全局变量,这样子讲的话,static就可以修饰三种东西,局部变量,全局变量和函数。
函数本文先不讲,在初步的C语言学习当中,大部分情况就是静态局部变量和静态全局变量。

二、用static修饰变量

1.静态局部变量

先讲讲static这个关键词怎么用吧,在一个局部变量的定义前面加上static,这个玩意儿就从局部变量变成了静态局部变量。
如图所示⬇

int mian()
{
   
 int a;//定义一个普通的局部变量
 static int b;//定义了一个静态局部变量
}

就是这么简单!那么它是什么意思呢,或者说有什么作用呢?
打起精神!敲黑板!!

1、延长局部变量的生命周期,从程序启动到程序退出,但是它并没有改变变量的作用域。什么意思呢,就是说,这个局部变量不会再像之前那样被回收,他依然会继续出现在内存当中!
2、定义变量的代码在整个程序运行期间仅仅会执行一次。什么意思?就是说这玩意儿只初始化一次!不懂没关系,看我贴段代码好好给您分析分析!

#includ
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

何不忆江南

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值