真题
登录以参加训练计划
指针(Pointer)
指针是一个变量,其值为另一个变量的地址。你可以通过指针来间接访问或修改该地址处存储的值。指针在C++中广泛使用,尤其是在处理动态内存分配、数据结构(如链表、树等)以及某些底层编程任务时。
指针的基本语法如下:
int x = 10;
int* ptr = &x; // ptr 是一个指向 int 类型的指针,存储了 x 的地址
// 通过指针访问 x 的值
cout << *ptr << endl; // 输出 10
// 通过指针修改 x 的值
*ptr = 20;
cout << x << endl; // 输出 20
&
符号用于获取变量的地址。*
符号用于解引用指针,即访问指针指向的变量的值。
指针可以指向任何有效的内存地址,也可以为 nullptr
(或 NULL
,但在C++11及以后推荐使用 nullptr
)表示空指针。
引用(Reference)
引用是已存在变量的别名。一旦引用被初始化,它就不能再指向其他变量。引用在语法上类似于变量,但在语义上更接近于常量指针(即指向某个地址且不能改变的指针)。
引用的基本语法如下:
int x = 10;
int& ref = x; // ref 是 x 的引用
// 通过引用访问 x 的值
cout << ref << endl; // 输出 10
// 通过引用修改 x 的值
ref = 20;
cout << x << endl; // 输出 20
注意,引用在声明时必须初始化,且一旦初始化后就不能再改变其指向的变量。引用在函数参数传递和返回值中特别有用,因为它们可以避免不必要的拷贝操作,提高效率。
指针与引用的主要区别
- 可变性:指针可以改变其指向的地址(即可以重新赋值),而引用一旦初始化就不能再改变其指向的变量。
- 空值:指针可以为空(即可以指向
nullptr
),而引用必须始终指向某个有效的变量。 - 初始化:引用在声明时必须初始化,而指针则可以在声明后任意时刻初始化。
- 语义:引用在语义上更接近于常量指针,因为它们都表示对某个特定内存地址的引用。然而,由于引用不能重新赋值,它们在某种程度上比指针更安全。
- 大小:在大多数情况下,指针的大小是固定的(例如,在32位系统上通常为4字节,在64位系统上通常为8字节),而引用的大小则取决于它所引用的变量的类型。然而,在实际编程中,我们通常不需要关心引用的大小,因为编译器会为我们处理这些细节。
章节 1. 二维数组
进行中
题目 | 尝试 | AC | 难度 |
---|---|---|---|
P212 同行列对角线的格子 | 354 | 119 | 6 |
P220 希蒙学习方阵 | 443 | 128 | 6 |
P225 希蒙的炸弹游戏-1 | 289 | 158 | 3 |
P226 希蒙的炸弹游戏-2 | 255 | 105 | 5 |
P227 希蒙的炸弹游戏-3 | 248 | 101 | 5 |
P228 希蒙的稀疏矩阵 | 316 | 121 | 5 |
P853 希蒙的魔力转圈圈 | 73 | 14 | 8 |
P877 哟这不是遥控车嘛 | 312 | 16 | 9 |
P2063 压缩技术 | 5 | 3 | 10 |
P2557 炸弹人小游戏 | 2 | 2 | 10 |
P2320 故障检测 | 295 | 2 | 7 |
章节 2. 真题
进行中
题目 | 尝试 | AC | 难度 |
---|---|---|---|
P2392 进制转换【GESP四级-2023.9】 | 210 | 61 | 6 |
P2394 幸运数【GESP四级-2023.06】 | 192 | 52 | 6 |
P2393 变长编码【GESP四级-2023.9】 | 61 | 26 | 5 |
P2395 图像压缩 【GESP四级-2023.06】 | 29 | 7 | 7 |
P2536 小杨的字典【GESP四级.2023.12】 | 123 | 54 | 4 |
P2537 田忌赛马【GESP四级.2023.12】 | 224 | 55 | 7 |
P2554 相似字符串【GESP四级.2024.3】 | 151 | 47 | 6 |
P2555 做题【GESP四级.2024.3】 | 158 | 43 | 6 |
P2637 黑白方块【GESP四级.2024.6】 | 56 | 21 | 5 |
P2729 宝箱【GESP四级-2024.6】 | 48 | 18 | 5 |
P2776 区间排序 【GESP四级-2024.09】 | 42 | 30 | 1 |
P2777 黑白方块 【GESP四级-2024.09】 | 40 | 14 | 6 |
P2764 Recamán【GESP四级-2024.12】 | 86 | 26 | 6 |
P2766 字符排序【GESP四级-2024.12】 | 110 | 24 | 7 |
- 参加人数
- 140
- 创建人
-
刘老师 (图书管理员)