C学习笔记-变量

简介: 这篇文章是关于C语言学习笔记,主要介绍了变量的属性,包括常量、作用域、存储期、存储方式和存储类别,以及如何通过存储类别确定变量的存储期和作用域。

常量(只读变量 read-only-variable)

const int a=3 //常变量不可先声明存在,后赋值

变量的属性

作用域(scope)

存储期(storage duration)

静态存储期(static storage duration)
动态存储期(dynamic storage duration)
取决于存储方式

存储方式

系统对变量分配固定/动态的存储空间

变量的存储类别(storage class)

静态存储
动态存储
分为四种
自动(auto) 系统默认的动态存储方式
**静态的(static)**静态局部变量,函数执行完后函数内原值不消失,在其他函数内不可见
在不同文件中仅限于本文件引用,其他文件不引用:
在本文件中定义全局变量时加static 则可以仅被本文件使用
**寄存器的(register)**节约执行时间,优化编译系统可以自动放置
外部的(extern) 全局变量 从定义处开始到末尾,此前的函数如要使用该变量,需要用extern作外部变量声明
主函数首 extern int a,b;

extern不是用于定义变量的量 而是变量声明(已定义的外部变量)

在不同的文件中使用同一个变量:
在一个文件中定义int a=3;
在另一个文件中用extern a;

通过存储类别可以确定存储期和作用域

目录
相关文章
|
7月前
|
存储 C语言
变量和常量的例子
变量和常量的例子
51 1
|
7月前
|
存储 编译器 C++
c++ 变量详细解释
c++ 变量详细解释
89 0
|
C语言 C++
c++入门基础知识——常量和变量
c++入门基础知识——常量和变量
173 0
|
存储 算法 Python
变量进阶(理解)
* 变量 和 数据 都是保存在 **内存** 中的 * 在 `Python` 中 **函数 的 参数传递** 以及 **返回值** 都是靠 **引用** 传递的
155 0
|
存储 编译器 C#
【C#基础】C# 变量与常量的使用
编程语言 C# 变量和常量的介绍。
164 0
【C#基础】C# 变量与常量的使用
|
存储 PHP 开发者
系统常量| 学习笔记
快速学习系统常量。
系统常量| 学习笔记
|
编译器 C语言 iOS开发
变量|学习笔记
快速学习变量
变量|学习笔记
|
Go 开发者
为什么需要变量|学习笔记
本课时进行讲解Go语言的变量,作为初学者要理解变量的含义以及在变成中如何去使用变量。
137 0
|
存储 程序员 PHP
常量| 学习笔记
快速学习常量。
|
编译器 Go 开发者
变量使用细节(2)|学习笔记
快速学习变量使用细节(2)