C---变量

变量

变量就是在运行过程中可以改变的量

变量的名字

同样,变量需要一个名字,几乎所有的语言在针对一个对象进行命名时都需要用到标识符命名规则

  • C++标识符命名规则:

    由字母、数字、_组成

    只能由字母、_开头

    不能与关键字重名

    有些系统会限制标识符长度(不统一)尽量不要超过32个字符

定义变量

还记得在python中如何定义变量吗

1
a = 1

一行代码就结束了,这是因为python解释器会自动识别1的数据类型并让a变量自适应数据

但C++要比python早很久,不具有这样的能力,所以就需要一个手动确定数据类型的方法

1
2
3
4
5
6
7
8
9
10
11
12
13
//声明变量
int a, b, ab;
float x, y;

//定义变量
a = 1;
b = ab = 2; //不推荐
x = 1.2;
y = 1; //这里的1是1.0的浮点型小数
x = 'a'; //错误的代码

//还可以声明和定义一起执行, 整个过程被称为变量的初始化
int c = 1;

这样可以防止变量名错误调用(如果变量名有误,编译器会提示”变量未被定义”)

常变量

常变量更像是一个常量(只不过是加了只读特性的变量而已),需要在声明时添加关键字const(简写constant持续的)

由于其定义完成后只读的特殊性,推荐直接对其进行初始化来区分其他变量

1
const int a = 1;

变量属性

函数内的就是局部变量, 函数外的就是全局变量(主函数也是函数)

作用域

变量的声明周期叫做作用域, 一共有四种: 文件作用域(全局) 函数作用域(函数中) 块作用域({}内部) 函数原型作用域(很小, 大概就是单个语句)

变量的储蓄类别

auto关键字: 默认状态下的变量类别, 由系统自动调整其内存空间(动态存储区)

static关键字: 静态属性, 作用域调整为该文件的模块且存放于静态存储区, 有该属性的变量每次作用域结束时, 其值都会返回本身的初始值, 不要与const关键字混淆

extern关键字: 外部变量声明, 就是全局变量的提前声明, 作用即用法与函数的提前声明相同, 如果把全局变量定义在整个文件的开头, 那就不用麻烦的多写一行带有extern的语句了

register关键字: 强制将某个变量放置在CPU的寄存器当中, 如果遇到频繁使用的大值可以使用这个属性来提高运行效率(但编译器一般会自动识别这样类似的变量, 所以这个关键字不常用)

  • Copyrights © 2024 Cdog Shen
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信