往期教学
第一课 C++的基本语法
前言
正文
书接上回,我们接着来学习C++
变量
变量的定义
变量是一个有类型,用来储存数据,可以改变里面数据的容器
在C++中定义变量
变量数据类型+变量名=数据;
常见的数据类型有
int | 整型变量 |
float | 浮点型变量 |
bool | 布尔型变量 |
double | 双浮点型变量 |
char | 字符型变量 |
string | 字符串型变量 |
unsigned int | 无符号整型变量 |
long | 长整型变量 |
short | 短整型变量 |
long long | 超长整型变量 |
int a;//整型变量
float b;//浮点型变量
bool c;//布尔型变量
double d;//双浮点型变量
char e;//字符型变量
string f;//字符串型变量
unsigned int g;//无符号整型变量
long h;//长整型变量
short i;//短整型变量
long long j;//超长整型变量
提示:在定义和使用string变量时最好加上头文件<cstring>或<string>或<string.h>
在C++中使用变量
Code1
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
string s="Hello,World!";
cout<<"变量:"<<s<<endl;
cout<<"直接输出:"<<"Hello,World!"<<endl;
return 0;
}
运行结果1
变量:Hello,World!
直接输出:Hello,World!
可以看到,变量存放的值和直接输出是完全一样的
Code2
#include<iostream>
using namespace std;
int main()
{
int a=2,b=3;
cout<<"a+b="<<a+b<<endl;
return 0;
}
运行结果2
a+b=5
可以看到,变量之间是可以进行操作的
全局变量与局部变量
全局变量,顾名思义,就是全局都可以使用的变量,通常定义在命名空间下,main函数上,由于堆和栈的特殊性,全局变量往往能获得更大的空间
局部变量,就是我们上文定义的变量,它只在一段代码中生效,但优先级大于全局变量
Code
#include<iostream>
using namespace std;
int n=5;
int main()
{
cout<<n<<endl;
return 0;
}
运行结果
5
全局变量的优先级小于局部变量,也就是说,当两个变量同名时,编译器会优先采用局部变量
Python和C++输入方式的差异
Python中的输入
Code
a=input("请输入 ")
print(a)
运行结果
请输入 5
5
C++中的输入
Code
#include<iostream>
using namespace std;
int main()
{
int a;
cout<<"请输入 "<<endl;
cin>>a;
cout<<a<<endl;
return 0;
}
运行结果
请输入 5
5
由于Python可以随意改变变量的值和类型,所以在Python中不需要给变量指定类型,然而在C++中,这样的设定并不存在,所以我们需要手动地去定义变量的类型
cin是什么
cin是C++里面的输入操作,包含在头文件<iostream>里,和Python里的input()不太一样,详细看上方的代码
cin的使用方式
cin>>变量名;
注意尖括号和cout输出的方向是不一致的,不要忘记了
常量
常量的定义
常量是一个有类型,用来储存数据,且不可以改变里面数据的容器
在C++中定义常量
方式1
const 数据类型 变量名=数据;
方式2
#define 数据类型 常量名(通常大写) 数据
注意:方式2定义的位置在头文件下,命名空间前,常量的值是无法改变的
在C++中使用常量
Code1
#include<iostream>
using namespace std;
int main()
{
const int a=5;
cout<<a<<endl;
return 0;
}
运行结果1
5
Code2
#include<iostream>
#define int A 5
using namespace std;
int main()
{
cout<<A<<endl;
return 0;
}
运行结果2
5
我们可以看到,虽然两篇代码的常量定义方式不一样,但输出结果是一样的,说明这两种定义方式可以进行互换的
后记
本人创作不易,后续有时间的时候我将第一时间更新,不知可否要到您的一个赞和关注,感激不尽!