指针数组与指针的指针:错误插入位置的处理和数组操作
需积分: 9 114 浏览量
更新于2024-07-13
收藏 482KB PPT 举报
"错误插入位置的处理-指针数组与指针的指针"
在编程中,错误插入位置的处理是一个非常重要的概念,特别是在链表插入操作中。链表是一种常用的数据结构,它可以动态地分配和释放内存,以满足不同的应用场景。然而,在链表插入操作中,错误插入位置的处理是一个非常重要的步骤。
在链表插入操作中,我们需要首先判断插入位置是否正确,如果插入位置不正确,我们需要打印错误信息并退出程序。例如,在给定的代码中,我们可以看到:
```
if (pre==NULL || k>i-1) /*if (k != i-1) */
{
printf("input location error! \n");
exit (1);
}
```
这里,我们首先判断 `pre` 是否为空,如果为空或者 `k` 大于 `i-1`,我们就打印错误信息并退出程序。
在正确插入位置的情况下,我们可以将新结点插入链表中,例如:
```
p->next = pre->next;
pre->next = p;
```
这里,我们将新结点 `p` 的 `next` 指针指向 `pre` 的 `next` 指针,然后将 `pre` 的 `next` 指针指向新结点 `p`。
在这篇文章中,我们还讨论了指针和数组的关系。指针是一种数据类型,它可以指向其他变量的地址,例如:
```
int *p;
int a = 10;
p = &a;
```
这里,我们定义了一个指针 `p`,然后将其指向变量 `a` 的地址。
数组是另一种常用的数据结构,它可以存储多个元素,例如:
```
int a[3];
```
这里,我们定义了一个数组 `a`,它可以存储三个整数元素。
指针数组是指针和数组的结合,它可以存储多个指针元素,例如:
```
int *p[3];
```
这里,我们定义了一个指针数组 `p`,它可以存储三个指针元素。
在指针数组中,我们可以使用指针来访问数组元素,例如:
```
p[0] = &a;
p[1] = &b;
```
这里,我们将指针数组 `p` 的第一个元素指向变量 `a` 的地址,将第二个元素指向变量 `b` 的地址。
在这篇文章中,我们还讨论了指针的指针,也就是指针数组的指针,例如:
```
int **p;
```
这里,我们定义了一个指针的指针 `p`,它可以指向其他指针的地址。
在指针的指针中,我们可以使用指针来访问其他指针,例如:
```
p[0] = &pa;
p[1] = &pb;
```
这里,我们将指针的指针 `p` 的第一个元素指向指针 `pa` 的地址,将第二个元素指向指针 `pb` 的地址。
在最后,我们讨论了两个例子,第一个例子是使用指针数组输出n个字符串,第二个例子是使用指向指针的指针变量将一批字符串按反序输出。
这篇文章讨论了错误插入位置的处理、指针和数组的关系、指针数组和指针的指针等概念,并提供了两个实践例子来帮助读者更好地理解这些概念。
2019-02-06 上传
2022-01-09 上传
2022-06-13 上传
点击了解资源详情
2022-04-18 上传
2021-07-16 上传
2022-04-18 上传
2021-06-25 上传
2023-07-06 上传
速本
- 粉丝: 20
- 资源: 2万+
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍