C++学习笔记
前言
小升初暑假期间,我决定开始学习C++,但有很多记不住的地方,于是开始写下这篇“C++学习笔记”,希望在帮助我自己的同时帮助他人!
C++学习记录-Markdown
工具的使用
在这里,我使用的是 Ubuntu 24.04.2 LTS AMD64,
编辑工具是 VIM - Vi IMproved 9.1 (2024 Jan 02, 编译于 Apr 01 2025 20:12:31),
编译工具是 g++ (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0
如何编译?
- 使用 vim 或其他文本编辑器(如 Nano,Pico,Micro 等等)编辑好你的C++源文件
- 使用 g++ 输入以下命令进行编译:
g++ <File_name.css>
默认会生成一个a.out的 Shell脚本
3. 使用
./a.out # 可把 “a.out” 换成你的文件名
来打开编译好的二进制文件执行!
1. 默认入口函数
入口函数是程序开始执行时首先运行的函数。在C++中,入口函数通常是 main(),程序从 main() 函数的第一行代码开始依次执行。
默认入口函数对于目前的我来说比较多、难记,具体如下:
- Windows用这个
#include <iostream>
using namespace std; // std::
int main()
{
//这里写主函数执行内容
system("pause");
return 0;
}
- Linux用这个
#include <iostream>
using namespace std; // std::
int main()
{
//这里写主函数执行内容
cin.get(); // 等待用户按下回车
return 0;
}
由于我选择使用Linux来开发,所以默认选择
cin.get();,包括以后所有代码都是!
- 如果执行输出“Hello, world! ",则使用:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello, world! " << endl; // 英文
cout << "你好,世界!" << endl; // 中文
cin.get();
return 0;
}
输出结果如下:
Hello, world!
你好,世界!
第三行等待用户输入回车,程序在此处暂停,等待用户按回车后结束
2. 数据类型
2.1. 整型
整型 数据类型如下表:
| 类型 | 中文别称 | 大小 | 范围 |
|---|---|---|---|
| short | 短整型 | \(2\) 字节 | \(-32768\) ~ \(32767\) |
| int | 整型 | \(4\) 字节 | \(-2147483648\) ~ \(2147483647\) |
| long | 长整型 | \(4\) 字节 | \(-2147483648\) ~ \(2147483647\) |
| long long | 长长整型 | \(8\) 字节 | \(-9223372036854775808\) ~ \(9223372036854775807\) |
这里,
long可以视作 long int ,而long long则可以视作 long long int ,只不过 int 被省略了,因此中文别称后有 “整型” 二字
整型的定义
整型只能够存储 整数 ,因此称为 整型。如果把小数存入整型,会 自动舍弃小数点及小数部分 ,如存储 \(3.14\) 为
short,会变成\(3\)
整型的选择
可以根据 需要存储的数据大小 来选择合适的 数据类型
如:\(36666\) 这个数值,它大于int 数据类型 的最高值(32767),因此只能选择另外三个中的任意一个。但long long大小是\(8\)字节,太大,不适合存储这类小数值,并且程序员应当节省内存,因此排除;而long,int间int更常用,因此通常选择int
2.2. 浮点型
| 类型 | 大小 | 范围 |
|---|---|---|
| float | \(4\) 字节 | 小数点后 \(6\) ~ \(7\) 位 有效数字 |
| double | \(8\) 字节 | 小数点后 \(15\) ~ \(16\) 位 有效数字 |
能够存储小数的位数就是这个类型的 精度 ,如果有一个小数 \(3.1415926535\) ,是\(10\)位小数,就应该存入
float,而不是float;但如果是一个三位小数 \(3.141\) ,应该存入float来节省内存
2.3. 字符型
| 类型 | 大小 | 范围 |
|---|---|---|
| char | \(1\) 字节 | 储存的是 字符,数字范围 \(-128\) ~ \(127\) |
ASCII 上的字符都可以用
char来进行储存,它的范围可以认为是 ASCII 编码表上的范围
2.4. bool(布尔)类型
| 类型 | 大小 | 范围 |
|---|---|---|
| bool | \(1\) 字节 | true(真)或false(假) |
注意:真假也可以用 数字 表示, 非0 的数字为
true(真)
总结
数据类型定了之后如果内容输错了会怎样?
答案是程序会正常执行,因为错误内容会被C++自动排除
如:
我给float变量 b 赋值为 20.25f ,如果打印会发现程序输出的是 20.25 ,并没有加上“f”,很智能
变量
- 变量:指的是在程序中可以被改变的量
- 定义:数据类型 (见上一章) ;标识符
创建变量
- 最简单入门的方法
int a; //创建变量,只创建时是位置值
a = 10; //对变量`a`进行赋值
- 更加连贯的操作
int a=10; //创建变量并赋值为10
- 输出操作:
cout <<a<< endl;
示例完整代码
#include <iostream>
using namespace std; // std::
int main()
{
cout <<"###1###"<< endl; // 表示第1种实现方式
int a; // 创建变量
a = 10; // 赋值
cout <<a<< endl; // 打印变量
cout <<""<< endl; // 简单换行
// 以下功能同上
cout <<"###2###"<< endl;
int b = 20;
cout <<b<< endl;
cout <<""<< endl;
cin.get(); // 等待用户按回车
return 0;
}
编译后输出结果:
###1###
10
###2###
20
运算
- 设置一个变量存储运算结果
int a = 1 + 1;
cout << a << endl;
- 输出:
2
- 设置两个变量相加
int a = 1;
int b = 2;
cout << a + b << endl;
- 输出:
3
- 直接打印两个数值的运算结果
cout << 1 * 3 << endl;
- 输出:
3
同时可以以此类推用 新变量 加 旧变量 、将 旧变量 运算结果设置为 新变量 这样的方法来继续按上面的方法进行计算!
运算时要注意输出变量的类型!
常量
- 常量:指的是在程序中不可以被改变的量
- 定义:
const 数据类型 标识符 = 值;
举例,1就是1,不能说 “1=2”;f就是f,也不能说“f=t”
定义常量
定义常量非常简单,只需要在定义变量的代码前加上一串 const , \(\text{但一定要记得初始化(赋值)!!}\) ,否则将导致这个常量 无法使用 ,然后 报错
使用常量(用途)
- 用于表示计算中的定量,如 正比例 / 反比例 里,等号后的就是一个定量,假设一个正比例 \(text{y/x = k(一定)}\),k 是一个定量,假设 k = 1 ,y 等于用户输入值(用户如何输入后续提到),那么就可以计算出 x 等于用户输入值。
那么如何创建这样一个 常量 k 呢?如下:
const int k = 1;
仅此而已
- 上文提到,常量用于表示 计算中的定量 ,那么具体有什么用途呢?比如,你要计算圆的面积,需要用到一个常量(定量)pi,pi = 3.14,显而易见,这是不能乱改的,想改只能到输入
const的那一行。为了防止你写代码不经意间修改了 变量 , 常量 因然而生!
键入值
前面提到我用Linux终止程序用的是一个cin.get(),这个代表侦测输入回车的操作。
了解cin
那么cin有什么用呢?就是如标题——侦测键入的值。
cout <<a<< endl;这个代码里用到了<<这样的两个小于号表示 左移,用处就是把右边的东西“递给”左边,这段代码的意思就是endl表示结束键入,“递给” a,a再“递给”cout来输入。
而这里cin要用到的是两个大于号>>——右移,将信息(整数)“传递”至右边。
使用cin
单变量赋值
如果要实现像Python那样
a = int(input())
的效果,C++需要这么做:
int a;
cin >> a; // 接收键盘接受的整数
多变量赋值
还可以一行代码给两个变量 分别 赋值:
int a;
int b;
cin >> a >> b ;
假如分别输入“1”和“2”,(两个变量间可以用 空格 隔开,也可以 换行)
使用
cout << a endl;
cout << b endl;
就会输出:
1
2
以此类推,后面可以接更多变量,并依次赋值,但 只能输入整数,否则可能不能让程序按预期执行 。
就这么简单

浙公网安备 33010602011771号