인프런 커뮤니티 질문&답변

jiwon6760님의 프로필 이미지
jiwon6760

작성한 질문수

홍정모의 따라하며 배우는 C언어

10.13 포인터의 배열과 2차원 배열

포인터의 배열

작성

·

342

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;
}
jiwon6760님의 프로필 이미지
jiwon6760

작성한 질문수

질문하기