C++变量的使用(超级详细)
在 C++ 程序中,变量就是用名称标明的一块儿内存空间,用于存储程序操作的数据。
变量,顾名思义,其值是可以改变的。假设有一个名字叫 num 的变量,C++程序中可以这样使用它:
所谓变量的定义,就是让程序分配一块儿适当大小的内存,并为其命名,这个名字就是变量的标识符。
和 C语言不同,C++ 可以随时定义所需的变量,而不必放在函数的开始处。变量定义的基本语法如下:
注意,变量名不能是任意的,命名规则如下:
例如,以下是一些有效的变量名:
在 C++ 中,可以通过多种方式初始化变量,包括:
1) 使用赋值运算符 = 来初始化变量:
也就是说,我们可以在定义变量的同时初始化它,也可以稍后再为变量赋值。一个变量可以赋值多次,就如同文章开头看到的那样(为 num 赋值多次)。
给变量赋值的写法很简答,还是使用赋值运算符(=),比如:
初始化是给未曾使用的变量设定一个初值,而赋值则是修改已经使用过的变量的值。另外,初始化只发生一次,就是定义变量的时候,而赋值可以发生很多次。
变量,顾名思义,其值是可以改变的。假设有一个名字叫 num 的变量,C++程序中可以这样使用它:
num = 1; // 将 1 存储到 num 这块内存中 ... num = 100; // 将 num 这块内存中存储的数值改成 100 ... num = 1000; // 将 num 这块内存中的数值改成 1000
变量的定义
要在程序中使用一个变量,必须先定义它。所谓变量的定义,就是让程序分配一块儿适当大小的内存,并为其命名,这个名字就是变量的标识符。
和 C语言不同,C++ 可以随时定义所需的变量,而不必放在函数的开始处。变量定义的基本语法如下:
type variable_name;type 是变量的数据类型,如 int、double、char 等;variable_name 是变量的名称。
注意,变量名不能是任意的,命名规则如下:
- 首字符:变量名必须以字母或下划线(_)开始。数字不能作为变量名的首字符。
- 字母和数字:变量名的其余部分可以由字母、数字和下划线组成。这意味着变量名可以包含字母(大写或小写)、数字和下划线。
- 关键字冲突:变量名不能与 C++ 的保留关键字相同。例如,int, class, return 等都是 C++ 的关键字,不能用作变量名。
- 大小写敏感:C++ 是一种区分大小写的编程语言。因此,Variable 和 variable 是两个不同的变量名。
- 长度限制:理论上,变量名的长度没有限制,但应避免使用过长的变量名,以便提高代码的可读性。
- 语义命名:虽然不是严格的规则,但建议变量名能够反映其用途或存储的内容。使用描述性的变量名可以使代码更易于理解和维护。
- 命名约定:不同的组织和项目可能有自己的命名约定。这些约定可能涉及单词之间的分隔(例如使用下划线或驼峰命名)以及大小写的使用。
例如,以下是一些有效的变量名:
int value; int _value; int value123; int Value123;以下是一些无效的变量名:
int 123value; // 以数字开头 int int; // 使用关键字 int value-123; // 包含非法字符 '-'
变量的初始化
初始化指的是定义变量的同时为变量赋予一个初值的过程。在 C++ 中,可以通过多种方式初始化变量,包括:
1) 使用赋值运算符 = 来初始化变量:
int num = 10;2) 使用圆括号 () 来初始化变量:
int num(10);3) 使用花括号 {} 来初始化变量:
int num{10};其中,第 3 种初始化方式在 C++11 和更高版本的 C++ 标准中是有效的。
变量赋值
变量赋值是将一个值分配给已定义的变量。也就是说,我们可以在定义变量的同时初始化它,也可以稍后再为变量赋值。一个变量可以赋值多次,就如同文章开头看到的那样(为 num 赋值多次)。
给变量赋值的写法很简答,还是使用赋值运算符(=),比如:
int num; // 定义变量 num = 10; // 赋值
当为多个变量赋值同一个值时,除了分别为各个变量赋值以外,还有一个更简单的写法,比如:
a = b = c = 10;等同于:
a = 10; b = 10; c = 10;注意,虽然为变量赋值和初始化使用的都是 =,但初始化和赋值的含义是不一样的。
初始化是给未曾使用的变量设定一个初值,而赋值则是修改已经使用过的变量的值。另外,初始化只发生一次,就是定义变量的时候,而赋值可以发生很多次。
实例
以下代码演示了定义和使用变量的过程。#include <iostream> int main() { int a; // 定义整型变量 a double b = 20.5; // 定义并初始化双精度浮点型变量 b char c{'C'}; // 定义并初始化字符型变量 c a = 10; // 为变量 a 赋值 std::cout << "a: " << a << "\nb: " << b << "\nc: " << c << std::endl; return 0; }运行结果为:
a: 10
b: 20.5
c: C