速学C++,第二天
变量类型
1.变量的名称:由字母、数字和下划线字符组成。它必须以字母或下划线开头。大写字母和小写字母是不同的
2.变量的定义:
type var_name = value;
var_name可以由一个或多个标识符组成,多个标识符之间用逗号隔开
变量可以在声明的时候指定初始值,不指定初始值时,带有静态存储持续时间的变量会被隐式初始化为 NULL(所有字节的值都是 0),其他所有变量的初始值是未定义的
3.变量的声明:使用关键字extern,用于向程序表明变量的类型和名字,程序中可以多次声明变量,但是变量定义只能是一次。
定义和声明的区别,定义也是声明,定义时包含了对变量的声明和定义,但声明不是定义。
为什么要区分声明和定义?为了让多个文件中保持对变量的相同的访问
函数与变量的声明、定义同理
变量的作用域
1.三种定义变量的方式:
全局变量:声明于所有的函数最外部的,即最顶层
形式参数:声明在函数参数中
局部变量:在函数或一个代码块内部声明的
2.四种变量的作用域:
局部作用域:在函数内部声明的变量具有局部作用域,它们只能在函数内部访问。局部变量在函数每次被调用时被创建,在函数执行完后被销毁。
全局作用域:在所有函数和代码块之外声明的变量具有全局作用域,它们可以被程序中的任何函数访问。全局变量在程序开始时被创建,在程序结束时被销毁。
块作用域:在代码块内部声明的变量具有块作用域,它们只能在代码块内部访问。块作用域变量在代码块每次被执行时被创建,在代码块执行完后被销毁。
类作用域:在类内部声明的变量具有类作用域,它们可以被类的所有成员函数访问。类作用域变量的生命周期与类的生命周期相同。
注意:变量声明遵循就近原则,即内部作用域与外部作用域存在同名变量时,内部覆盖外部
3.初始化局部变量和全局变量:当局部变量被定义时,系统不会对其初始化,必须进行初始化。全局变量系统会自动初始化其值:
数据类型 | 初始化默认值 |
---|---|
int | 0 |
char | '\0' |
float | 0 |
double | 0 |
pointer | NULL |
常量
常量是固定值,在程序执行期间不会改变。这些固定的值,又叫做字面量。
常量可以是任何的基本数据类型,可分为整型数字、浮点数字、字符、字符串和布尔值
常量就像是常规的变量,只不过常量的值在定义后不能进行修改
评论区