C言語で配列の値をポインタに代入するにはどうすればよいですか。
C言語では、配列の値をポインタに代入するには、次の 2 つの方法があります。
- 配列名をポインタとして使う:
int arr[] = {1, 2, 3, 4, 5};
int *ptr = arr; // 将数组名arr赋给指针ptr
- アドレス記号&と取り出し記号*を使用する
int arr[] = {1, 2, 3, 4, 5};
int *ptr = &arr[0]; // 将数组元素arr[0]的地址赋给指针ptr
ptrはどちらも、配列の先頭要素を指しています。ptrから配列要素にアクセスできます。例えば、
int firstElement = *ptr; // 访问指针指向的第一个元素
int secondElement = *(ptr + 1); // 访问指针指向的第二个元素
いずれの方法でも配列をポインタとして使用し、ポインタは配列の先頭要素を指しています。C言語では配列名は配列の先頭アドレスを表しているので、配列名をポインタに直接代入できます。