使用指针访问数组元素的 C++ 程序
指针存储变量的内存位置或地址。换句话说,指针引用内存位置,获取存储在该内存位置的值称为指针的解引用。
一个使用指针访问数组单个元素的程序如下所示:
示例
#include <iostream> using namespace std; int main() { int arr[5] = {5, 2, 9, 4, 1}; int *ptr = &arr[2]; cout<<"The value in the second index of the array is: "<< *ptr; return 0; }
输出
The value in the second index of the array is: 9
在上面的程序中,指针 ptr 存储数组中第三个索引(即 9)的元素的地址。
这在以下代码片段中显示。
int *ptr = &arr[2];
指针被解引用,并且使用间接运算符 (*) 显示值 9。这在如下所示。
cout<<"The value in the second index of the array is: "<< *ptr;
另一个程序,其中使用单个指针访问数组的所有元素,如下所示。
示例
#include <iostream> using namespace std; int main() { int arr[5] = {1, 2, 3, 4, 5}; int *ptr = &arr[0]; cout<<"The values in the array are: "; for(int i = 0; i < 5; i++) { cout<< *ptr <<" "; ptr++; } return 0; }
输出
The values in the array are: 1 2 3 4 5
在上面的程序中,指针 ptr 存储数组第一个元素的地址。这是如下完成的。
int *ptr = &arr[0];
在此之后,使用 for 循环来解引用指针并打印数组中的所有元素。在循环的每次迭代中,指针都会递增,即在每次循环迭代中,指针都指向数组的下一个元素。然后打印该数组值。这可以在以下代码片段中看到。
for(int i = 0; i < 5; i++) { cout<< *ptr <<" "; ptr++; }
广告