C言語でポインタを使用して配列にアクセスする方法
C言語では,ポインタを使って配列の要素を参照できます。一般的な方法を以下に示します。
- インデックスを使って配列の要素へアクセスする:
- int arr[5] = {1, 2, 3, 4, 5};
int *ptr = arr; // 配列の最初の要素を指すprintf(“%d\n”, ptr[0]); // 配列の最初の要素を出力
printf(“%d\n”, ptr[1]); // 配列の2番目の要素を出力 - ポインタ演算子「*」とオフセットを使用して配列要素にアクセスする:
- int arr[5] = {1, 2, 3, 4, 5};
int *ptr = arr;printf(“%d\n”, *ptr);
printf(“%d\n”, *(ptr + 1)); - 指針變數を使って配列の全ての要素を走査する:
- int arr[] = {1, 2, 3, 4, 5};
int *ptr = arr;for (int i = 0; i < 5; i++) {
printf(“%d\n”, *(ptr++));
}
配列要素にポインタでアクセスする際には、ポインタが正しいメモリ位置を指すように注意する必要がある。さもなければ、配列の境界を越えてアクセスしたり、別のエラーが発生したりするおそれがある。