C 言語: ポインタを使用して 2 次元配列の値を取得する

 C 言語では、ポインタを使用して配列の要素にアクセスできます。2 次元配列の場合、通常は 1 次元配列へのポインタの配列として考えられます (ここでは、2 次元配列のアドレスが連続していることを強調する必要があります)。

たとえば、3 行 3 列を含む 2 次元配列 arr がある場合、この配列を指すポインター p を定義できます。

#include<stdio.h>
int main() {
int arr[3][3]={1,4,7,8,9,6,3,2,5},*p;

//指针p指向数组的首个元素,也可以理解为首个地址
p=arr;
//接下来,我们可以使用指针来访问数组元素。例如,要访问第2行第2列的元素,可以使用以下代码:
int a=*(*(arr+1)+1);
printf("%d",a);
	return 0;
}

このうち、*(arr+1) は 2 次元配列の 2 行目を指し、*(*(arr+1)+1) はその行の 2 番目の要素を指し、最後に * 演算子を使用して、要素の値

ここでもう一度強調します。2次元配列のアドレスは連続しています。

場合によっては、ポインターを使用して 2 次元配列要素にアクセスする方が便利で柔軟な場合があります。

おすすめ

転載: blog.csdn.net/weixin_63987141/article/details/129959816