本篇目录
- 一、环境搭建
- 1.1 Windows环境
- 1.2 Linux环境(CentOS 8)
- 二、数据类型初识
- 2.1 整型---int
- 2.2 字符串---string
- 2.3 浮点型---double
- 2.4 布尔型---bool
- 三、输入输出及运算符
- 3.1 常规输入输出
- 3.2 常用操作符
- 四、逻辑语句
- 4.1 判断语句
- 4.2 循环语句
- 4.3 选择语句
- 五、程序主语句
一、环境搭建
1.1 Windows环境
- VS code 安装
- 下载vscode:进入
- 安装插件:C++和Chinese language pack 两个扩展包
- 保存cpp后缀文件:新建文件,测试
- Visual Stadio 2019安装
1.2 Linux环境(CentOS 8)
- 制作Make文件:略
- 生成可执行文件
- 方法一:
- 直接生成默认可执行文件a.out:
g++ hello.cpp
- 方法二:
- 生成目标文件(中间文件)hello.o:
g++ -c hello.cpp
- 生成可执行文件hello.exe :
g++ hello.cpp -o hello.exe
- 运行文件(要有x权限):
./hello.exe
二、数据类型初识
- 编译:就是把高级语言变成计算机可以识别的二进制语言
- 分离式编译机制:C++语言支持将程序分割为多个文件,每个文件独立编译,最后用链接器链接成一个整体程序
- 声明
- 声明方式
- 引用式声明:简称”声明“,还未分配内存空间,不进行初始化,因为其为引用了已定义的变量的声明的写法,写法:
extern int n;
- 定义式声明:简称”定义“,分配内存空间,进行初始化,写法:
int n;
- 特点:在每个文件中,变量都必须先定义再使用,变量可以声明多次,但只可定义一次
- 功能:明确变量名字和类型,编译时通过其进行内存分配、变量初始值设置
- 初始化:赋初值,显式
int n = 3 ;
,extern int n = 3;
(这也是定义),隐式static int n;
- 赋值:给变量赋值,仅针对定义过的变量,写法
n = 3;
2.1 整型—int
- 整形赋值
// 方法1:
// 定义
int c_int;
// 赋值
c_int = 100;
// 方法2:
// 声明、定义、赋值同时
int c_int = 100;
2.2 字符串—string
- 字符串赋值
#include <string>
// 定义、初始化
string c_str = "/root/bin/";
2.3 浮点型—double
- 浮点型赋值
// 定义、初始化
double c_double = 3.1415926;
2.4 布尔型—bool
- 布尔型赋值
// 定义、初始化
// 非0为true,0为false
bool is_ready = true;
三、输入输出及运算符
3.1 常规输入输出
- 键盘输入
// 回车键:结束输入
// 空格:输入分隔符,用于一次输入多个变量值
cin >> 变量名;
- 终端输出
// endl为换行符,常用操作
cout << 'the value is' << ran_num << endl;
//“\n”也为换行符,适用于字符串
cout << 'the value is' << ran_num << "\n";
>>>the value is 4
- 递增(减)运算符(i++、i–)
// 先初始化j,后i
int i = j = 1;
// i先使用,再自增1
int x = i++;
// 输出x的值为:1
cout << x << endl;
// 输出i的值为:2
cout << i << endl;
// 功能:j先自增加1,再使用
int y = ++j;
// 输出y的值为:2
cout << y << endl;
// 输出j的值为:2
cout << j << endl;
3.2 常用操作符
- 算数符号:+、-、*、/(相除取整数截取)、%(相除取余数)
- 组合赋值运算符:+=、-=、*=、/=、%=
- 逻辑运算符:&&(且)、||(或)、!(非)
- 比较运算符:>、<、=、!=
四、逻辑语句
4.1 判断语句
- if-else语句
// 注意:if(x=3),相当于判断if(3)
// 区别于:if(x==3)
if(判断语句)
// 单条语句可不用大括号
{
// 大括号只与>=2条语句的语句块配合使用
语句块;
}
else
{
语句块;
}
- if-else if语句
if(判断语句)
{
语句块;
}
else if(判断语句)
{
语句块;
}
else
{
语句块;
}
- 三目操作符
// 判断式?表达式1:表达式2
// 若判断式为真,执行1,否则执行2
x < 0 ? y = 10 : z = 20;
// 三目赋值:将三目运算结果给变量a初始化
int a = x < 0 ? 10 : 20;
4.2 循环语句
- while语句
// 条件为true,继续进行循环体
while(判断语句)
// 单条语句可不用大括号
{
语句块;
}
- do-while语句
do
// 单条语句可不用大括号
{
语句块;
// 条件为true,继续进行循环体
}while(判断语句)
- for语句
// i的初始值为0;每次循环i加一;i最大值为10
for(int i = 0; i<=10; i++)
// 单条语句可不用大括号
{
语句块;
}
4.3 选择语句
- switch语句
// 一个整型或枚举类型
switch(变量)
{
// 例如:199、'a'(字符,内部以整形存储)
case 子项值:
语句;
break;
default:
语句;
}
break:跳出最内层循环
continue:跳出本次循环,进行下次循环
五、程序主语句
- 代码示例
/* #include ,预处理语句,在文件被编译之前,添加或删除文本,
<iostream>,输入输出流,有此语句,才可调用cin和cout函数 */
#include<iostream>
// 使用类std的命名空间,否则cout调用应写为std::cout
using namespace std;
// 全局区:声明或定义全局变量、常量、类、函数
// extern前缀类声明:用于在文件间共享的数据
// int表示程序对操作系统的返回值,0为正常退出
// main为程序主函数名称
int main()
{
// 局部变量区:定义局部变量
// 若为static前缀定义的变量,为本文件内,函数间共享的数据
int c_num;
// 定义和程序其他部分建议用空行隔开
// 函数语句区(其中定义的变量也是局部变量)
// 输出
cout << '请输入一个整数:';
// 输入,同时赋值
cin >> c_num;
cout << '输入的整数为:' << c_num << endl;
// return语句可不写,默认为此语句
return 0;
}
调用全局变量:
::全局变量名
,显式调用全局变量,因为局部变量若与全局变量同名,则会暂时覆盖全局变量,直到释放局部变量,此方法直接调用全局变量,无视覆盖