c++双重指针能否用于指向指针数组

avatar
作者
猴君
阅读量:0

是的,C++中的双重指针可以用于指向指针数组。

双重指针是指一个指针变量指向另一个指针变量,而后者又指向一个指针数组。这种结构通常用于处理二维数组或者指针数组。

下面是一个简单的示例代码,演示了如何使用双重指针来指向指针数组:

int main() {     int *ptr = new int[10];  // 创建一个int类型的指针数组     int **ptr2 = new int*[10];  // 创建一个指向int类型指针数组的指针      // 将ptr指向的每个元素都赋值为1     for (int i = 0; i < 10; i++) {         ptr[i] = 1;     }      // 将ptr2指向ptr所指向的指针数组的每个元素都赋值为2     for (int i = 0; i < 10; i++) {         ptr2[i] = ptr + i;         *(ptr2[i]) = 2;     }      // 打印ptr2指向的指针数组的元素     for (int i = 0; i < 10; i++) {         cout << *(*(ptr2 + i)) << " ";     }      delete [] ptr;     delete [] ptr2;      return 0; } 

输出结果为:

2 2 2 2 2 2 2 2 2 2 

在这个示例中,我们首先创建了一个int类型的指针数组ptr,然后创建了一个指向int类型指针数组的指针ptr2。接下来,我们将ptr指向的每个元素都赋值为1,然后将ptr2指向ptr所指向的指针数组的每个元素都赋值为2。最后,我们打印出ptr2指向的指针数组的元素,得到的结果是2 2 2 2 2 2 2 2 2 2。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!