静态地将2D数组初始化为指向指针的指针可以通过以下方式实现:
#include <stdio.h>
int main() {
int arr[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int *ptr[3];
for (int i = 0; i < 3; i++) {
ptr[i] = arr[i];
}
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
printf("%d ", *(ptr[i] + j));
}
printf("\n");
}
return 0;
}
上述代码中,我们首先定义了一个二维数组 arr
,并初始化了其元素。然后,我们定义了一个指针数组 ptr
,用于存储指向每一行的指针。接下来,通过循环将 arr
中每一行的地址赋值给 ptr
中对应位置的指针。最后,通过双重循环遍历 ptr
中的指针,使用指针算术运算访问二维数组的元素并打印出来。
这种方法可以静态地将2D数组初始化为指向指针的指针,使得我们可以通过指针的方式来操作和访问二维数组的元素。
腾讯云相关产品和产品介绍链接地址:
请注意,以上仅为腾讯云的一些相关产品,其他云计算品牌商也提供类似的产品和服务。
领取专属 10元无门槛券
手把手带您无忧上云