目录及简要概括
本节我们将学习C++中的变量,包括变量的定义、赋值。变量在编程语言中是一个非常重要的内容,本节内容不难,但极其重要。希望大家认真学习。
- 什么是变量?
- 如何定义变量并赋值
- 变量赋值有关问题
1. 什么是变量?
变量(variate),顾名思义,是一个可变的值。在C++中,我们可以给变量起一个名字,然后赋予它不同的值,即可使用。
2. 如何定义变量?
首先,要注意的是,变量要现定义,再使用。意思就是,你要先告诉计算机有这么一个东西才可以用。在定义变量的同时,我们会决定这个变量是什么类型。今天,我们先学两种变量的定义,即 整型(整数) 与 浮点型(小数)。
整型(整数)变量定义与赋值
整型变量,即整数变量(请逐渐习惯整型这个词,我们以后会常用到它)顾名思义,它的值永远是一个整数。
在C++中,整型变量的定义用int
来定义。
例如,我们在这个程序中定义一个名为a
的整型变量。
#include <iostream>
using namespace std;
int main()
{
int a;//定义一个名为a的整型变量
return 0;
}
在定义后,你可以对其进行赋值,如下一个程序中我们将定义好的整型变量a
赋值为200:
#include <iostream>
using namespace std;
int main()
{
int a;//定义一个名为a的整型变量
a = 200;//将变量a赋值为200
return 0;
}
这里a = 200
中的等号称作赋值号。它并不是数学中“等于”的意义,它的意义是将右边的值赋值给左边。
你可以使用cout语句来输出变量a
的值,例如
#include <iostream>
using namespace std;
int main()
{
int a;//定义一个名为a的整型变量
a = 200;//将变量a赋值为200
cout << a;//输出变量a的值
return 0;
}
运行上面的程序,您得到的输出结果为
200
恭喜你,完成了整型变量的定义、赋值。
C++ 标识符
在上述程序中,你定义了一个整型变量,它的名称叫a
。这个a
便是一个标识符
标识符是用来标识变量、函数等任何其他用户自定义项目的名称,用它来命名程序正文中的一些实体,比如函数名、变量名等。标识符命名遵循一定规则,今后我们对变量和函数命名都遵循这个规则。
在C++中,标识符的命名规则为:
- 所有标识符必须由一个字母(a~z,A~Z)或下画线(_)开头。不能以数字开头。
- 标识符的其他部分可以跟随任意的字母、数字或下画线。
- 不能和系统关键字冲突
关键字又称保留字,是预先定义好的标识符(例如你用来定义整形变量的int
),C++编译器对其进行特殊处理,这些关键字不能作为你所定义的标识符。今后,我们会学习这些关键字的意义,以下列出了一部分C++现有关键字。(不需要刻意去记,今后我们会逐渐用到它们)
auto
break
case
char
const
continue
default
delete
do
double
else
enum
extern
float
for
friend
goto
if
inline
int
long
mutable
namespace
new
private
protected
public
register
reinterpret_cast
return
short
signed
sizeof
static
static_assert
struct
switch
template
this
throw
try
typedef
union
unsigned
using
virtual
void
volatile
wchar_t (C++11起)
while
alignas (C++11起)
alignof (C++11起)
constexpr (C++11起)
nullptr_t (C++11起)
nullptr (C++11起)
static_cast (C++11起) (虽然在C++98中已存在,但在C++11中得到完全定义)
C++对大小写比较严格,因此a
和A
时两个完全不一样的标识符。
整型变量的其它定义与赋值方法
在上述程序中,我们定义了整型变量a并对其赋值:
#include <iostream>
using namespace std;
int main()
{
int a;//定义一个名为a的整型变量
a = 200;//将变量a赋值为200
cout << a;//输出变量a的值
return 0;
}
接下来,我们要学习一些其整型变量的其它定义与方法。
(cout程序不会的赶紧看上上节课)
** 1. 定义时赋值**
您只需要在使用int
定义整型变量时加上赋值号对其赋值即可。
#include <iostream>
using namespace std;
int main()
{
int a = 200;//定义一个名为a的整型变量并将变量a赋值为200
cout << a;//输出变量a的值
return 0;
}
2. 同时定义多变量
在使用int
定义多个整型变量时,每个变量之间用逗号(,)隔开即可。
#include <iostream>
using namespace std;
int main()
{
int a, b, c;//定义a、c、c三个整型变量
a = 1;//给变量a赋值为1
b = 2;//给变量b赋值为2
c = 3;//给变量c赋值为3
cout << a << endl;//输出a的值并换行
cout << b << endl;//输出b的值并换行
cout << c << endl;//输出c的值并换行
return 0;
}
输出结果为
1
2
3
当然,您也可以在定义时对任意变量直接赋值:
#include <iostream>
using namespace std;
int main()
{
int a = 1, b, c = 3;//定义a、c、c三个整型变量,给变量a赋值为1,给变量c赋值为3
b = 2;//给变量b赋值为2
cout << a << endl;//输出a的值并换行
cout << b << endl;//输出b的值并换行
cout << c << endl;//输出c的值并换行
return 0;
}
3. 多变量同时赋值
在使用int
定义多个整型变量时,每个变量之间用逗号(,)隔开即可。
同理,有多个变量等待你赋值时,在同一个语句中,也可以用逗号(,)隔开。
#include <iostream>
using namespace std;
int main()
{
int a, b, c;//定义a、c、c三个整型变量
b = 2, a = 4, c = 6;//给变量b赋值为2,给变量a赋值为4,给变量c赋值为6
cout << a << endl;//输出a的值并换行
cout << b << endl;//输出b的值并换行
cout << c << endl;//输出c的值并换行
return 0;
}
4. 变量赋值有先后
变量的值会随你的赋值而改变,且赋值的顺序随你的程序语句先后顺序执行
如下所示
#include <iostream>
using namespace std;
int main()
{
int a = 1;//定义变量a并赋值为1
a = 2, a = 3;//先将a的值赋为2,再将a的值赋为3
cout << a << endl;//输出a的值并换行
a = 40;
a = 50;
cout << a << endl;//输出a的值并换行
return 0;
}
结果为
3
50
浮点型(小数)变量的定义与赋值
浮点型变量,即小数变量(请逐渐习惯浮点型这个词,我们以后会常用到它)顾名思义,它的值只能是一个小数。
在C++中,浮点型变量的定义用float
来定义。
例如,我们在这个程序中定义一个名为a
的浮点型变量。
#include <iostream>
using namespace std;
int main()
{
float a;//定义一个名为a的浮点型变量
return 0;
}
在定义后,你可以对其进行赋值,如下一个程序中我们将定义好的浮点型变量a
赋值为1.6:
#include <iostream>
using namespace std;
int main()
{
float a;//定义一个名为a的浮点型变量
a = 1.6;//将变量a赋值为1.6
return 0;
}
你可以使用cout语句来输出变量a
的值,例如
#include <iostream>
using namespace std;
int main()
{
float a;//定义一个名为a的浮点型变量
a = 1.6;//将变量a赋值为1.6
cout << a;//输出变量a的值
return 0;
}
运行上面的程序,您得到的输出结果为
1.6
恭喜你,完成了整形变量的定义、赋值。
浮点型变量与整型变量一样,都可以同时定义多个、在定义时赋值等。你可以自己尝试以下。
3. 变量赋值有关问题
将小数赋值给整形变量
让我们尝试以下吧。
#include <iostream>
using namespace std;
int main()
{
int a;//定义一个名为a的整型变量
a = 1.6;//将变量a赋值为1.6
cout << a;//输出变量a的值
return 0;
}
输出结果为:
1
当我们给一个整型变量赋值为一个小数时,C++编译器会自动把小数部分去除(不会四舍五入),并赋值给这个整型变量。C++中,这被称为数据丢失。
将整数赋值给浮点型变量
先用一个实例尝试以下。
#include <iostream>
using namespace std;
int main()
{
float a;//定义一个名为a的浮点变量
a = 1;//将变量a赋值为1
cout << a;//输出变量a的值
return 0;
}
输出结果为:
1
虽然它的结果是1,但这个变量是以浮点型存储的,只是在输出过程中,编译器省略了小数点后面的0。你可以认为这个变量的整数部分是1,小数部分是0。这样不会造成数据丢失。
本节内容到此结束。上一节我们讲了C++的基本运算符,在引入变量的概念后,C++有关的运算会变的复杂,我们将变量的有关计算放在下一节去讲。大家一定要多多练习上一节的运算与这一节的变量,以便后面更好的学习。