博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c语言存储类型的特点,[C语言学习]存储类型
阅读量:5010 次
发布时间:2019-06-12

本文共 927 字,大约阅读时间需要 3 分钟。

v2-c7fcd85b9df13ec81397f22e827e9c53_b.jpg

C语言主要有四种存储类型: 自动,静态,外部,寄存器

默认存储类型. 在C语言中,假设忽略了变量的存储类型,则编译器将自动默认为自动类型

注册变量. 该寄存器位于CPU中,其特点是: 容量小,速度快. 通常用于临时存储程序中经常使用的变量或一些中间变量等,从而可以提高程序的运行速度.

1-886-png_6_0_0_379_469_166_160_892.979_1262.879-924-0-69-924.jpg

该类别的变量将首先分配寄存器.

static定义的变量都是静态变量,用于限制范围,无论是全局变量还是局部变量都存储在数据段中. 该关键字的作用主要体现在三个方面: 局部变量,全局变量,函数

对于其存储类型声明为静态的局部变量,其范围未更改,只有定义该局部变量的函数才能使用它. 但. 它的生命周期已经改变. 普通局部变量的声明周期是定义它的函数在定义它的函数运行之后的运行长度. 局部变量将被取消. 但是对于静态局部变量c 类 static 函数,其生命周期是整个函数运行周期.

c9d28c64d37ce4fc687beee3cd5a55c0.gif

对于其存储类型声明为静态的全局变量. 它的生命周期没有变化,该变量在程序运行期间始终存在,但其效果却降低了. 因为定义为静态类型的全局变量只能由该文件的功能使用.

为什么将全局变量定义为静态类型后范围会变小?

因为在一个项目中. 不仅包含源文件,而且可能包含很多源文件.

03.gif

普通全局变量在其他源文件中可见,其范围是整个项目. 其他文件如果要引用全局变量,则只能通过extern声明使用.

但是,当声明为静态时,其范围仅限于使用此源文件. 该全局变量对其他文件隐藏,不可见.

实际上,statickeyword具有许多优点. 在编程中,不同的人会完成不同的模块,以防止在不同模块之间使用重复的全局变量. 只需在每个模块的全局变量前面添加一个静态变量. 并且. 假定此文件的外部变量不需要其他文件引用. 然后可以将其设置为静态静态外部变量,从而避免滥用其他文件!

8-484-png_6_0_0_332_727_281_261_892.979_1262.879-519-0-280-519.jpg

在函数前面添加staticc 类 static 函数,则此函数的范围仅限于此文件. 其他文件不可见.

此存储类型主要用于引用全局变量和其他文件的功能.

[C语言学习]存储类型

本文来自电脑杂谈,转载请注明本文网址:

http://www.pc-fly.com/a/jisuanjixue/article-283908-1.html

你可能感兴趣的文章
归并排序法
查看>>
【剑指offer】面试题26:复杂链表的复制
查看>>
spark开发生成EXE
查看>>
Vue 全家桶介绍
查看>>
WPF Bitmap转Imagesource
查看>>
Java compiler level does not match the version of the installed Java project facet.解决方法
查看>>
笔记_小结
查看>>
Linux lsof命令 umount U盘
查看>>
自定义Font
查看>>
linux svn 服务端搭建
查看>>
maven用途、核心概念、用法、常用参数和命令、扩展
查看>>
linux时间同步ntp服务的安装与配置
查看>>
django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法...
查看>>
网络编程-socket并发-粘包问题
查看>>
python 中安装pandas
查看>>
Hibernate 的<generator class="native"></generator>的不同属性含义
查看>>
linux修改root账户的用户名所得的教训
查看>>
【LeetCode】Flatten Binary Tree to Linked List
查看>>
读后感-浮生六纪
查看>>
执行指定路径的程序文件
查看>>