首页
技术博客
PHP教程
数据库技术
前端开发
HTML5
Nginx
php论坛
新用户注册
|
会员登录
PHP教程
技术博客
编程问答
PNG素材
编程语言
前端技术
Android
PHP教程
HTML5教程
数据库
Linux技术
Nginx技术
PHP安全
WebSerer
职场攻略
JavaScript
开放平台
业界资讯
大话程序猿
登录
极速注册
取消
热门标签 | HotTags
input
bitmap
import
emoji
char
solr
schema
export
plugins
subset
controller
yaml
nodejs
include
frameworks
function
future
iostream
loops
dagger
grid
shell
const
javascript
filter
audio
window
text
uri
web3
web
keyword
foreach
netty
js
typescript
cmd
integer
uml
actionscrip
php5
hash
cookie
testing
regex
bit
ascii
less
go
spring
python
erlang
object
triggers
get
case
dockerfile
format
instance
int
vbscript
config
tree
callback
match
metadata
command
header
php
settings
sum
copy
python2
golang
select
md5
require
hashcode
buffer
当前位置:
开发笔记
>
编程语言
> 正文
基础语法static关键词
作者:sa沙沙ssa | 来源:互联网 | 2023-10-10 12:26
说明static的英文意思是:adj.静止的;静态的;停滞的在C语言中作用和其本意一样,如下:保证其生命周期和程序生命周期一致
说明
static的英文意思是:
adj.静止的;静态的;停滞的
在C语言中作用和其本意一样,如下:
保证其生命周期和程序生命周期一致,不会被清除;实现原理:编译时更改其存储域。
保证其作用域和可见性不扩散,限制其作用域和可见性;实现原理:编译器保证其作用域和可见性。
用法
在C语言中可用来修饰变量和函数。
修饰变量
全局变量
在全局变量前加上关键字static,全局变量就被定义成为一个全局静态变量。
好处
不会被其他文件代码影响,例如:访问,修改。
其他文件中可以使用相同名字的变量,不会发生冲突。
局部变量
在局部变量之前加上关键字static,局部变量就被定义成为一个局部静态变量。
好处
延长生命周期,当static用来修饰局部变量的时候,它就改变了局部变量的存储位置,从原来的栈中存放改为静态存储区。但是局部静态变量在离开作用域之后,并没有被销毁,而是仍然驻留在内存当中,直到程序结束。
作用
内存存储区域相同,全局静态变量和局部静态变量都是放在静态存储区,静态存储区在整个程序运行期间都存在。
默认初始化值相同,未经初始化的静态存储区变量会默认初始化为全0,而不是随机值。
作用域和可见性不扩散,全局静态变量作用域被限制在当前文件,在其它文件是不可见的,局部静态变量作用域仍为局部。
注意点
不管是全局还是局部静态变量,static修饰的变量在编译的时候就分配好了内存,因此不能初始化为不确定的值,例如:time() 函数返回值等需要运行才能得到的值。
修饰函数
在函数的返回类型前加上关键字static,函数就被定义成为静态函数。
函数默认情况下是可被其它文件代码引用的,但静态函数只能在定义的文件中可见,不能被其他文件所用,限制了其作用域。
好处:
其他文件中可以定义相同名字的函数,不会发生冲突 。
static
c语言
编译
文件
写下你的评论吧 !
吐个槽吧,看都看了
会员登录
|
用户注册
推荐阅读
char
C语言注释工具及快捷键,删除C语言注释工具的实现思路
本文介绍了C语言中注释的两种方式以及注释的作用,提供了删除C语言注释的工具实现思路,并分享了C语言中注释的快捷键操作方法。 ...
[详细]
蜡笔小新 2023-12-14 11:22:08
import
baresip android编译、运行教程1语音通话
本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ...
[详细]
蜡笔小新 2023-12-14 10:53:48
import
C语言指针的应用与价值探讨与阐述
本文探讨了C语言中指针的应用与价值,指针在C语言中具有灵活性和可变性,通过指针可以操作系统内存和控制外部I/O端口。文章介绍了指针变量和指针的指向变量的含义和用法,以及判断变量数据类型和指向变量或成员变量的类型的方法。还讨论了指针访问数组元素和下标法数组元素的等价关系,以及指针作为函数参数可以改变主调函数变量的值的特点。此外,文章还提到了指针在动态存储分配、链表创建和相关操作中的应用,以及类成员指针与外部变量的区分方法。通过本文的阐述,读者可以更好地理解和应用C语言中的指针。 ...
[详细]
蜡笔小新 2023-12-13 15:02:30
include
Android源码深入理解JNI技术的概述和应用
本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ...
[详细]
蜡笔小新 2023-12-13 10:00:57
text
iOS数据库Sqlite的SQL语句分类和常见约束关键字
本文介绍了iOS数据库Sqlite的SQL语句分类和常见约束关键字。SQL语句分为DDL、DML和DQL三种类型,其中DDL语句用于定义、删除和修改数据表,关键字包括create、drop和alter。常见约束关键字包括if not exists、if exists、primary key、autoincrement、not null和default。此外,还介绍了常见的数据库数据类型,包括integer、text和real。 ...
[详细]
蜡笔小新 2023-12-12 18:42:03
text
31.项目部署
目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ...
[详细]
蜡笔小新 2023-12-12 12:15:41
uri
全面介绍Windows内存管理机制及C++内存分配实例(四):内存映射文件
本文旨在全面介绍Windows内存管理机制及C++内存分配实例中的内存映射文件。通过对内存映射文件的使用场合和与虚拟内存的区别进行解析,帮助读者更好地理解操作系统的内存管理机制。同时,本文还提供了相关章节的链接,方便读者深入学习Windows内存管理及C++内存分配实例的其他内容。 ...
[详细]
蜡笔小新 2023-12-10 18:30:17
const
GTK+浅谈之十五GObject面向对象的继承
本文介绍了GTK+中的GObject对象系统,该系统是基于GLib和C语言完成的面向对象的框架,提供了灵活、可扩展且易于映射到其他语言的特性。其中最重要的是GType,它是GLib运行时类型认证和管理系统的基础,通过注册和管理基本数据类型、用户定义对象和界面类型来实现对象的继承。文章详细解释了GObject系统中对象的三个部分:唯一的ID标识、类结构和实例结构。 ...
[详细]
蜡笔小新 2023-12-10 12:33:04
window
如何在Windows环境下配置php+apache环境
本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ...
[详细]
蜡笔小新 2023-12-13 10:39:24
window
2020年计算机二级MSOffice选择习题及答案详解
本文介绍了2020年计算机二级MSOffice的选择习题及答案,详细解析了操作系统的五大功能模块,包括处理器管理、作业管理、存储器管理、设备管理和文件管理。同时,还解答了算法的有穷性的含义。 ...
[详细]
蜡笔小新 2023-12-12 17:11:34
window
Google在I/O开发者大会详细介绍Android N系统的更新和安全性提升
Google在2016年的I/O开发者大会上详细介绍了Android N系统的更新和安全性提升。Android N系统在安全方面支持无缝升级更新和修补漏洞,引入了基于文件的数据加密系统和移动版本的Chrome浏览器可以识别恶意网站等新的安全机制。在性能方面,Android N内置了先进的图形处理系统Vulkan,加入了JIT编译器以提高安装效率和减少应用程序的占用空间。此外,Android N还具有自动关闭长时间未使用的后台应用程序来释放系统资源的机制。 ...
[详细]
蜡笔小新 2023-12-12 16:46:59
window
OO第一单元自白:简单多项式导函数的设计与bug分析
本文介绍了作者在学习OO的第一次作业中所遇到的问题及其解决方案。作者通过建立Multinomial和Monomial两个类来实现多项式和单项式,并通过append方法将单项式组合为多项式,并在此过程中合并同类项。作者还介绍了单项式和多项式的求导方法,并解释了如何利用正则表达式提取各个单项式并进行求导。同时,作者还对自己在输入合法性判断上的不足进行了bug分析,指出了自己在处理指数情况时出现的问题,并总结了被hack的原因。 ...
[详细]
蜡笔小新 2023-12-12 14:51:21
import
树莓派语音控制的配置方法和步骤
本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ...
[详细]
蜡笔小新 2023-12-12 03:02:49
import
恶意软件分析的最佳编程语言及其应用
本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ...
[详细]
蜡笔小新 2023-12-10 18:39:23
import
从坚持到喜欢——我对软件工程的选择和学习经历
本文讲述了作者从最初对软件工程的选择迷茫到逐渐喜欢并坚持学习的经历。作者在大学期间通过学习专业课和参与项目开发,不断挑战自己并取得成就感。虽然曾考虑过转专业和复读,但最终决定坚持学习软件工程,并为自己的未来努力奋斗。作者还提到了大学生活与自己最初的预期不同,但对此并没有太多抱怨。 ...
[详细]
蜡笔小新 2023-12-10 13:30:14
sa沙沙ssa
这个家伙很懒,什么也没留下!
Tags | 热门标签
input
bitmap
import
emoji
char
solr
schema
export
plugins
subset
controller
yaml
nodejs
include
frameworks
function
future
iostream
loops
dagger
grid
shell
const
javascript
filter
audio
window
text
uri
web3
RankList | 热门文章
1
《庆寿僧舍即事》翻译 原文赏析诗人元赵孟頫
2
十一、jqPlot 饼图和圆环图
3
Java面筋大全
4
P2437 蜜蜂路线题解
5
81POJWall(计算几何)
6
开发笔记:设计模式DesignPattern行为型模式(下)
7
cad背景怎么去掉网格线详细教程
8
react 验证用户登录是否超时
9
python 翻译官,你认识?
10
C#label控件实现带阴影的闪现效果
11
你知道GPL吗?GPL 没落了吗?
12
如何在C#中使用MSMQ
13
C++解析XML, TINYXML2的使用
14
c语言连接硬件,c语言对硬件
15
分布式配置中心———采用对称加密算法和非对称加密算法
PHP1.CN | 中国最专业的PHP中文社区 |
DevBox开发工具箱
|
json解析格式化
|
PHP资讯
|
PHP教程
|
数据库技术
|
服务器技术
|
前端开发技术
|
PHP框架
|
开发工具
|
在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved |
京公网安备 11010802041100号
|
京ICP备19059560号-4
| PHP1.CN 第一PHP社区 版权所有