C言語で2次元の文字配列ポインタの表現方法

C言語では、ポインタの配列を使って2次元の文字配列を表すことができます。

ポインター配列は、要素がすべてポインターという配列である。2次元文字配列の場合、ポインター配列を使って各行を表し、さらにポインター配列のポインターを使って2次元文字配列全体を表すことができる。

次にサンプルコードを示します。

#include <stdio.h>
int main() {
char arr1[] = {'a', 'b', 'c'};
char arr2[] = {'d', 'e', 'f'};
char arr3[] = {'g', 'h', 'i'};
char* rows[] = {arr1, arr2, arr3}; // 定义指针数组,每个指针指向一行数组
printf("%c\n", rows[0][1]); // 输出第一行的第二个元素 'b'
printf("%c\n", rows[1][2]); // 输出第二行的第三个元素 'f'
printf("%c\n", rows[2][0]); // 输出第三行的第一个元素 'g'
return 0;
}

上の例では、3 つのキャラクタ配列 arr1、arr2、arr3 を定義してから、各キャラクタ配列を指すポインタ配列 rows を定義しました。ポインタ配列 rows を使用することで、インデックスを介して各行の要素にアクセスできます。

ポインタ配列の要素型と2次元文字配列の行型は対応する必要があります。

bannerAds