指针与指针数组操作详解:数据处理与寻址

需积分: 6 2 下载量 16 浏览量 更新于2024-07-14 收藏 164KB PPT 举报
本文主要讨论了如何利用指向指针的指针数组来对数据进行处理,重点涉及以下几个关键知识点: 1. **指针基础**: - 指针是计算机科学中的重要概念,它存储的是内存地址,可以用来间接访问和操作内存中的数据。 - 定义指针变量时,需要指定数据类型和一个星号(*),如`int *pi`表示一个指向整型变量的指针。 2. **一维数组和指针应用**: - 一维数组`a[6]`在内存中是连续存放的,通过数组名`a`实际上是对其首元素地址的引用,因此可以被视为一个隐含的指针。 - 对于一维数组,可以使用指针`p`遍历数组元素,如`*(p+i)`访问数组的第`i`个元素。 3. **指针数组**: - `int *s[6]`定义了一个指针数组,每个元素都是一个指向整数的指针,用于存储一维数组`a`的元素地址。 - 使用`for`循环将数组`a`的元素地址赋给指针数组`s`,`s[i]=a+i`。 4. **指向指针的指针**: - 变量`**t`是一个指向指针的指针,它可以存储其他指针的地址,如`t=s`表明`t`指向了指针数组`s`。 5. **数据输入和输出**: - 输入数据时,可以使用指针数组来间接读取用户输入,如`scanf("%d",*(t+i))`。 - 输出数据同样通过指针访问数组元素并打印,如`printf("%3d",*(p+i))`。 6. **示例程序**: - 提供了一个例子,展示了如何通过指针操作修改数组元素(如`*(p+4)+=6`),以及使用指针进行数组元素的查找和显示。 7. **查找最小值和最大值**: - 通过指针遍历数组,可以比较元素值来找出最小值和最大值。有两种方法:一是逐个比较`*(p+i)`;二是跳过第一个元素比较`*p`后边的元素。 文章讲解了如何运用指针的概念和技术,包括一维数组、指针数组和指向指针的指针,以及在实际操作中如何处理数据输入、输出、查找最大值和最小值等。通过理解这些基本概念,可以更有效地处理和操作计算机内存中的数据。