책 내용 질문하기
2번 문제 질문합니다
도서
2022 시나공 정보처리기사 필기
페이지
82
조회수
364
작성일
2022-02-22
작성자
탈퇴*원
첨부파일

p = a[0];이라고 되어있는데

포인터 변수 p에 배열 a의 주소를 저장하려면 p = &a[0];이 되어야하는거 아닌가요?

p = a[0]만 해도 되는건가요?

답변
2022-02-24 11:33:49

안녕하세요 길벗수험서 운영팀입니다.

 

배열이 2차원인 경우 대괄호[]가 두 번 들어가서 정확한 위치를 지정하지 않는 경우 모두 주소값을 가리킨다고 보셔도 좋습니다.

(a[0][1]이 아닌 대괄호가 부족한 a[0], a[1] 등은 모두 주소)

 

배열 a가 3행 3열이라면

배열명 a는 1행 1열의 주소를 갖습니다. 

배열명 a[0]은 1행 1열의 주소를 갖습니다.

배열명 a[1]은 2행 1열의 주소를 갖습니다.

배열명 a[2]는 3행 1열의 주소를 갖습니다.

 

즉 해당 문제에서 a[0]은 2행 2열의 배열에서 1행 1열의 주소, 즉 11을 가리키는 주소를 저장하고 있습니다.

 

행복한 하루되세요 :)

  • 관리자
    2022-02-24 11:33:49

    안녕하세요 길벗수험서 운영팀입니다.

     

    배열이 2차원인 경우 대괄호[]가 두 번 들어가서 정확한 위치를 지정하지 않는 경우 모두 주소값을 가리킨다고 보셔도 좋습니다.

    (a[0][1]이 아닌 대괄호가 부족한 a[0], a[1] 등은 모두 주소)

     

    배열 a가 3행 3열이라면

    배열명 a는 1행 1열의 주소를 갖습니다. 

    배열명 a[0]은 1행 1열의 주소를 갖습니다.

    배열명 a[1]은 2행 1열의 주소를 갖습니다.

    배열명 a[2]는 3행 1열의 주소를 갖습니다.

     

    즉 해당 문제에서 a[0]은 2행 2열의 배열에서 1행 1열의 주소, 즉 11을 가리키는 주소를 저장하고 있습니다.

     

    행복한 하루되세요 :)

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.