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的用法

一、简单概述

static

1、static修饰局部变量,成为一个局部静态变量

2、static修饰全局变量与函数,成为静态全局变量与静态函数。

什么叫局部变量,咱们来看一段代码:

#include<stdio.h>
void sum()
{
	int z=1;
	z++;
	printf("%d\n",z);
}
int main()
{	
	int k=0;
	while(k<5)
		{
		sum();
		k++;
		}
	return 0;
}

程序进入主函数,执行while循环语句5次,且每次都进入sum()函数,sum()函数的功能是创建一个z变量,并使其自加后打印它的值。我们发现每次进入sum函数z都会被赋值为1,然后自增,根据程序功能,执行完一次循环后会,屏幕会打印出一个2,那么最后执行完毕屏幕上就会打印五个2,如下图所示:

?这里我们把变量z称为局部变量,简单来说,局部变量就是局部定义,局部有效。这里所谓的“”“局部”是指在{}里,在{}号内定义且超出{}变量将不在有效。所以这里的z只在sum函数内有效,故程序执行完毕会在屏幕打印五个2.

那么什么叫局部静态变量呢?让我们把代码修改一下,使程序能够实现在屏幕上打印数字2-5。

#include<stdio.h>
void sum()
{
	static int z=1;
	z++;
	printf("%d\n",z);
}
int main()
{	
	int k=0;
	while(k<5)
		{
		sum();
		k++;
		}
	return 0;
}

程序执行结果如下:

我们发现,仅仅是在变量z前面加了个static,使其从局部变量变为局部静态变量,它的值就会被保留,每次进入sum函数他的值就会被加一。?

这就是static的简单用法。

总结static用于修饰变量时,直接在声明变量时在其之前加入关键字static即可,它的功能是将局部变量变成局部静态变量,使变量值在其作用域外依然能被保存。

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-09-05 10:37:43  更:2021-09-05 10:37:47 
 
开发: 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年11日历 -2024/11/23 19:51:53-

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