变量与常量
1.变量与常量
在整个程序的运行过程中,没有变化且不能变化的,我们称之为常量。在程序运行期间,可能会改变或者被赋值的,我们称之为变量。
2.声明一个变量
在前面的几章中,我们已经看过如何声明一个变量了。
short
声明变量的公式:类型 + 标识符 + 封号
即可声明一个变量。
必须先声明变量后,才能使用变量。
正确, 变量使用前被声明了。
// 正确
错误, 变量a未声明。
// 错误
错误, 变量a在声明前使用。
// 错误
3. 变量允许使用的字符
声明变量的公式:类型 + 标识符 + 封号
标识符由大小写字母,数字和下划线组成。标识符不能以数字开头,并且必须与现有的关键词不同。
short
TIPS:
关键词是被编译器识别的,具有特殊意义的单词。在C语言标准中,关键词如下表所示。它们在C语言当中,都有具体的语法意义。例如int,代表一个整型数据类型,return代表函数结束并带回返回值。
4. 变量初始化和赋值
我们思考一下,下面的代码,它的打印出来的数值是多少呢?
#include
我们发现,它居然报错了!
这段代码,在Visual Studio 2019中这段代码已经无法编译成功了。为什么呢?因为a没有被初始化,也没有被赋值。它的值是一个随机值。这样很危险,有可能导致程序产生错误的结果。因此,在Visual Studio 2019中已经禁止使用了。早期的版本你可以看到a的值是一个无意义的随机值。
以下两种是正确的写法
写法1:变量声明后,立刻初始化为100。
#include
写法2:变量声明后,不初始化。后续使用赋值运算符赋值。
#include
另外,请注意:变量可以多次赋值,但是不能被多次初始化。多次初始化就相当于你重复定义了一个变量了。
// 正确,将输出100,200。
5. 初始化和赋值的区别
乍一看,初始化好像就是把变量声明和赋值写在一起了。对于整型和浮点变量确实如此。但是,对于后面将见到的其他类型,会略有不同。请区别对待初始化和赋值,这两个概念。
6. 常量
字面常量是程序中,一开始就被写死在代码中,且不能被改变的量。
6.1 字面常量
例如:100,200,1.3344,"HelloWorld",被称之为字面常量。
100
字符串字面常量,被括号包裹的被称之为字符串常量。
"HelloWorld"
6.2 符号常量
假设我们有一个商品的价格price,目前为3元。现在我们要计算,10件这个商品的价格。
#include
我们并没有直接写num * 3,而是定义了一个符号常量PRICE。这样做有什么好处呢?比如,我们这个程序很大,并且商品的价格被用在很多函数里面,不仅仅是main函数里。但是有一天,这个商品的价格变了。那么修改起来会很麻烦,这时呢。如果我们把商品的价格定义为符号常量,这样只要修改这个符号常量所代表的值即可了。
定义符号常量的公式:
#define 符号常量 值