IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C语言常用关键字之静态关键字static的使用 -> 正文阅读

[C++知识库]C语言常用关键字之静态关键字static的使用

哈喽大家好,今天小编给大家介绍一个C语言的常用关键字static,刚入门的小伙伴可能对static深感头疼,接下来让我们一起揭开static的神秘面纱吧

static语言修饰的对象

  • 局部变量
  • 全局变量
  • 函数

? ?static修饰局部变量

1.用static修饰的局部变量,会延长局部变量的寿命,改变变量的生命周期

2.让静态局部变量出了作用域依然存在,到程序结束,生命周期才结束

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int sum(int a)
{
	int c = 0;
	static int b = 3;
	c += 1;
	b += 2;
	return (a + b + c);
}
int main()
{
	int i = 0;
	int a = 2;
	for (i = 0; i < 3; i++)
	{
		printf("%d ", sum(a));
	}
	return 0;

下面大家和小编一起分析一下这段代码吧

函数从主函数main函数入,i=0,a=2,然后进入for循环里,在for循环中对i作出判断,i从0开始到2结束,循环3次,每一次循环都要打印一次sum(a)的返回值

i=0,符合循环条件,进入循环,输出sum(a)的返回值,此时程序进入自定义函数sum,c=0,b=3(注意b是被static修饰的变量),程序往下走,c=0+1=1,b=3+2=5,此时return(1+5+2)=8,所以第一次循环时在屏幕上打印的值为8

i=1,符合循环条件,进入循环,输出sum(a)的返回值,此时程序进入自定义函数sum,c=0,b=3,c=0+1=1,(因为c为局部变量,每次循环结束之后,c就被 int c重新初始化为0了),b=5+2=7(因为b被static函数修饰,此时b为静态局部变量)此时return(1+7+2)=10,所以第二次循环时在屏幕上打印的值为10

i=2,符合循环条件,进入循环,输出sum(a)的返回值,此时程序进入自定义函数sum,c=0,b=3,c=0+1=1,(因为c为局部变量,每次循环结束之后,c就被 int c重新初始化为0了),b=7+2=9(因为b被static函数修饰,此时b为静态局部变量)此时return(1+9+2)=12,所以第二次循环时在屏幕上打印的值为12

? static修饰全局变量

全局变量的作用域是整个工程,但是如果用 static 修饰全局变量,就会使得全局变量失去外部链接属性,在这里,也要注意static修饰的全局变量--静态全局变量和全局变量的区别

全局变量的作用域是整个源程序,用 static 修饰全局变量,就会使得全局变量失去外部链接属性,变成内部链接属性,所以静态全局变量只能在自己的.C文件中使用

?static修饰函数

static修饰函数时和static修饰全局变量很相似,因为函数一般都是有外部链接的,被 static 修饰后,会使得函数失去外部链接属性,变成内部链接属性。所以?static 修饰的函数只能在自己所在的 .c 文件内部使用,不能在其他文件中使用

?

??

??

?

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-10-22 20:56:54  更:2022-10-22 20:59:57 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 5:06:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码