C++中的变量
一、说明
C++对于数据的操作有直接输出类型的,也有经过“包装”类型的。直接输出类型的是我们前面学习的方式,比如下面这样:
1.数字直接参与运算的
#include<iostream> using namespace std; int main(){ cout<<1+2<<endl; //3 cout<<3-1<<endl; //2 return 0; }2.输出字符的
#include<iostream> using namespace std; int main(){ cout<<'a'<<endl; //a cout<<'b'<<endl; //b return 0; }3.输出字符串的
#include<iostream> using namespace std; int main(){ cout<<"hello"<<endl; //hello cout<<"你好"<<endl; //你好 return 0; }除了上面的直接操作,我们还可以通过其他方式,最常见的就是变量和常量。
例子 1:买菜记账(存储 + 复用数据)
例子 2:调空调温度(动态修改数据)
例子 3:快递柜取件(内存地址 + 变量名)
例子 4:分类放书包(类型约束)
核心总结
二、变量
变量就是能变化的量。特点就是“喜新厌旧”。
变量的的使用及其取值范围由它的类型决定,常见的变量类型及其取值范围可以参考前面这篇文章:C++ 数据类型深度指南:整型 / 浮点型 / 构造类型定义及使用
变量的定义方式如下:
数据类型说明符 变量名1,变量名2,变量名3......变量名n;
比如
int a,b;
上面这行代码表示定义了两个整型变量,名字分别是a和b,没有赋初值。
如果是赋初值的情况,下面这个例子
int a=1;
上面这个例子就是定义了一个整型变量,并赋初值为1
一个综合的例子如下:
#include<iostream> using namespace std; int main(){ int a; //定义了一个整型变量a,没有赋值 int b,c=1; //定义了两个整型变量b,c。c赋初值1 double d=0.2; //定义了一个浮点型变量,初值是0.2 bool x=true; //定义了一个bool型变量,初值是true char k='g'; //定义了一个char型变量,初值是g return 0; }如果对上面的内容进行输出
#include<iostream> using namespace std; int main(){ int a; //定义了一个整型变量a,没有赋值 int b,c=1; //定义了两个整型变量b,c。c赋初值1 double d=0.2; //定义了一个浮点型变量,初值是0.2 bool x=true; //定义了一个bool型变量,初值是true char k='g'; //定义了一个char型变量,初值是g //测试输出 cout<<"a="<<a<<endl; //a=4254665,没有赋初值,是随机数 cout<<"b="<<b<<",c="<<c<<endl;//b=0,c=1。 b没有赋值,随机0 cout<<"d="<<d<<endl;//d=0.2 cout<<"x="<<x<<endl;//x=1 cout<<"k="<<k<<endl;//k=g cout<<t<<endl; //编译不通过,提示变量t不存在(因为前面没定义) return 0; }总结:
数据类型说明符,决定了变量所存储的数据种类,可根据实际情况进行选择,可以是int、char、double等数据类型,也可以是struct等构造数据类型
变量定义通常在的开头位置,定义同类型的多个变量时,变量之间用逗号分隔,定义哥语句的末尾用分号结束。
变量必须先定义后使用,没有定义变量直接使用会报错。
变量的命名方式有严格要求:
(1)只能由字母(大小写都可以)、数字、下滑线组成
(2)不能以数字开头
(3)不能是关键字
【解释】什么是关键字? 用通俗的话讲,C++ 的关键字就是「编程语言官方规定的 “专用词”」—— 这些词有固定的含义和用途,是编译器能 “看懂” 的 “指令词汇”, 你不能把它们当变量名、函数名随便用,就像生活里的 “专用名词 / 规则术语”,不能乱改、乱用作其他用途。 基础常用的关键字:int float char double if else for while return const void class struct bool break continue static new delete 等。
在DevC++中,关键字会变黑色,比如下面这样,可以看到int,double都变黑了,而dog没有变黑
本节配套练习题: