작성
·
338
0
int arr0[3] = {1, 2, 3};
int arr1[3] = {4,5,6};
int* parr[2] = {arr0,arr1}와 같이 포인터의 배열을 선언해준다는 가정 하에 이때 parr자체는 arr0[0]을 가리키는 것이 맞나요??
답변 1
1
그렇지 않습니다.
아래 예제 코드로 확인해보세요..!
parr[0]은 arr0 배열의 첫 번째 요소를 가리키는 포인터이고,
parr[1]은 arr1 배열의 첫 번째 요소를 가리키는 포인터입니다.
말씀해주신 arr0[0]은 arr0에 저장된 값이구요. (말씀하신 예제에서는 1)
#include <stdio.h>
int main() {
int arr0[3] = {1, 2, 3};
int arr1[3] = {4,5,6};
int* parr[2] = {arr0,arr1};
printf("%p\n", parr);
printf("%d\n", arr0[0]);
return 0;
}