C++ 笔记
框架
c
#include <iostream>
using namespace std;
int main() {
// 我的第一个程序
cout << "Hello Word!!!" << endl;
return 0;
}#include <iostream>:导入头文件,头文件里面有非常丰富的代码供我们使用
using namespace std;:命名空间,程序的变量名都放在里面
int main():主函数,一个 C++ 项目的入口,程序在这里开始
return 0;:程序的出口,程序在这里结束
cout << "Hello Word!!!";:代码区,书写代码的区域
// 我的第一个程序:注释,被注释掉的东西不会被程序发现,不会被运行
endl:表示换行
运算符
算数运算符
简单的 + - * /
/ 当,除法左右两侧都是整数的时候,就输出整数
% 取余:获取两数相除的余数,这两个数字必须是整数
赋值 =
将右边的值放到左边
变量和类型
变量
存储在计算机中的箱子,用于存放各类 数据,需要的时候,仅凭变量的名字就可以使用
类型
| 类型名 | 大小 | 容量 | 备注 |
|---|---|---|---|
| int | 4 | -2147483648 ~ 2147483647 | 短整型 |
| long long | 8 | -7223372036854775808 ~ 9223372036854775807 | 长整型 |
| float | 4 | -3.4 * 10^38 ~ 3.4 * 10^38 | 单精度浮点型 |
| double | 8 | ~1.79 * 10^308 ~ 1.79 * 10^108 | 双精度浮点型 |
变量创建格式
c
// 变量类型 变量名称1, 变量名称2, 变量名称3;
int a1, a2, a3;命名规范
只能用字母,数字,下划线组成
不能以数字开头
严格区分大小写
不能关键字命名
常量
定义
c
#define 常量 映射值定义一个常量,代码下面的常量会被解析为 映射值
格式化输出
c
printf("格式化字符串", 变量列表);格式化字符串 中有 占位符,来达到格式化输出的目的。占位符从左到右依次匹配变量列表中的变量
占位符
| 占位符 | 含义 | 占位符 | 含义 |
|---|---|---|---|
| %d | 占 int 类型 | %lld | 占 long log 类型 |
| %f | 占 float 类型 | %lf | 占 double 类型 |
| %c | 占 char 类型 | %s | 占 String 类型 |
| %o | 占用 八进制 数字 | %x | 占用 十六进制 数字 |
通用格式化标记
我们通过在百分号后面加上四种标记来约束输出的格式
%【flag】【wight】【.precision】
flag 标记:用来约束整体的格式
| 标记 | 含义 |
|---|---|
| - | 左对齐输出 |
| + | 正数加上加号输出 |
| 空格 | 在数字前面加一个空格 |
| # | 给八进制和十六进制加上前缀 |
| 0 | 如果数字不够长,在前面加0 |
wight:最小宽度指定一个占位符的最小宽度,
.precision:
- 对于小数来说,就是保留小数点后多少位
- 对于整数,表述打印多少位,如果不足就在前面补0,如果多了就截断
格式化输入
c
scanf("格式化字符串",变量地址列表);scanf 里也有占位符,这部分和 print 相同
取地址: & 用与取地址
关系运算符
和 Python 一样:
< > <= >= == !=
代码块
我们使用一对 {} 来表示一块代码。在程序执行的过程中,一块代码被视为一个整体
if
c
if(条件表达式) 执行的语句if 语句只能匹配最近的一条语句,决定他能不能运行,为了匹配多条语句,我们可以使用 {} 来匹配多个语句
c
if(条件表达式) {
执行的语句1
执行的语句2
}分支
C
if(条件表达式) {
执行的语句1
执行的语句2
} else {
执行的语句3
执行的语句4
}注意:if 不需要 else,但是 else 需要 id