当前位置:首页 > 健康 >

c语言static(c语言static的作用举例)

来源:原点资讯(www.yd166.com)时间:2022-11-25 14:24:49作者:YD166手机阅读>>

c语言static,c语言static的作用举例(1)

接上文:

C语言 static 关键字的常见用法有三种:

  • 用于局部变量的修饰符;
  • 用于全局变量的修饰符;
  • 用于函数的修饰符。
1、用于局部变量的修饰符

当 static 用于修饰局部变量时,通常是在某个函数体内,只能在该函数内被调用。

这样定义的变量通常被称为局部静态变量,它的值不会因为函数调用的结束而被清除,当函数再次被调用时,它的值是上一次调用结束后的值。

如下面这段代码所示,变量 x 是局部变量,变量 y 是静态局部变量。在调用函数后,变量 x 的值会被清除,而变量 y 的值则会被保留。多次调用该函数,变量 x 每次都会从新初始化,而变量 y 的值则不会。

c语言static,c语言static的作用举例(2)

静态局部变量的特性:

  • 存储位置:处于静态存储区,当用 static 修饰局部变量的时候,它就改变了局部变量的存储位置,从原来的栈中存放改为静态存储区;
  • 初始化操作:未经初始化的局部静态变量会被程序自动初始化为0(自动对象的值是任意的,除非他被显示初始化);
  • 作用域:为局部作用域,即当定义它的函数结束的时候,作用域随之结束(不能被访问)。但是静态局部变量在离开作用域之后,并没有被销毁,而是仍然保存在内存当中,直到程序结束。
2、用于全局变量的修饰符

关键字 static 还可用于修饰全局变量,该变量在某一个文件中变量,但不属于任何一个函数内,这样的变量通常称为静态全局变量

静态全局变量的存储位置、初始化操作同静态局部变量的特性,但其作用域有所不同:静态全局变量可以被该文件内的所有函数访问,但不能被其它文件内的函数访问。

3、用于函数的修饰符

关键字 static 还可以用于修饰一个函数,这样的函数称之为静态函数。

定义一个静态函数就是在函数的返回类型前加上 static 关键字。

静态函数的作用域仅限于本文件,不能被其它文件调用。

c语言static,c语言static的作用举例(3)

栏目热文

c语言static的作用(c语言static关键字的作用)

c语言static的作用(c语言static关键字的作用)

C语言是一门面向结构化的高级编程语言(也有人认为它是中级语言),用于通用编程需求。基本上,C语言是其基本语法和库函数的集...

2022-11-25 13:59:49查看全文 >>

static 关键字的作用(static的三种作用)

static 关键字的作用(static的三种作用)

static,即静态声明。它在 作用域、存储方式、生命周期 等各方面影响一个变量或函数。文章将从 局部变量、全局变量、普...

2022-11-25 14:00:58查看全文 >>

c语言static使用举例(c语言必背100程序)

c语言static使用举例(c语言必背100程序)

这篇介绍C语言里函数的定义、子函数的使用。接着介绍变量的作用域,定义全局变量、静态变量、只读变量、变量初始化等等。一、函...

2022-11-25 14:29:37查看全文 >>

static在c语言中的用法(c语言顺口溜)

static在c语言中的用法(c语言顺口溜)

一、位操作运算符 含义 运算符 含义& 按位与 ~ 取反| 按位或 << 左移^ 按位异或 >>...

2022-11-25 14:01:09查看全文 >>

static声明的优缺点(static的底层原理)

static声明的优缺点(static的底层原理)

文章目录面向对象的进阶面向对象进阶的第一篇, 主要讲解内容如下:static关键字 : 开发中如何定义一个共享的信息,给...

2022-11-25 14:24:41查看全文 >>

static是关键字还是标识符(static 作用域)

static是关键字还是标识符(static 作用域)

static - 分包今日目标:1 能够理解什么是分类分包2 能够掌握static关键字的使用3 能够使用分包写出学生管...

2022-11-25 14:09:06查看全文 >>

c语言中static三种用法(c语言面试基础知识)

c语言中static三种用法(c语言面试基础知识)

C 的static关键字可修饰类成员变量/方法,表示变量/方法不从属于特定对象,而是属于类的。仔细琢磨静态成员变量,会...

2022-11-25 14:26:55查看全文 >>

static的意义(static作用)

static的意义(static作用)

特点特点:一种路由的方式,路由项(routing entry)由手动配置,而非动态决定。与动态路由不同,静态路由是固定的...

2022-11-25 14:33:05查看全文 >>

c语言static的用法(c语言union)

c语言static的用法(c语言union)

如何学习c语言,在学习C语言的时候一定要掌握什么知识?在这里我给大家写出了一点点小计划,不喜勿喷,谢谢!一、要学习的书《...

2022-11-25 14:44:48查看全文 >>

static什么时候用(static作用)

static什么时候用(static作用)

在什么地方使用static?可以修饰成员变量和成员方法静态代码块在java类中,使用一对大括号包围起来的n行代码被称之为...

2022-11-25 14:09:37查看全文 >>

文档排行