inflearn logo
강의

Course

Instructor

(2026 Latest!) Pass the Information Processing Engineer Practical Exam in just one week

The Concept and Use of Pointers (1. Accessing Memory Addresses)

배열 포인터 함수 관련

Resolved

52

dhkdxo12

49 asked

0

포인터의 개념과 활용1. 메모리 주소에 접근하자)

21:52


int arr[] = {1, 2, 3, 4, 5} 일 때

printf("%d\n", *arr);은

기본적으로 배열 인덱스 첫번째 값을 지칭하여 값이 1이 나오는 것을 이했습니다.


다만, printf("%d\n", arr) 이라면 값이 어떻게 출력되나요?

python java c 정보처리기사 정보처리산업기사

Answer 2

0

weekendcode

안녕하세요.

printf("%d\n", arr);는 배열의 값이 아니라 배열의 시작 주소를 출력하게 됩니다. 배열 이름 arr은 식에서 첫 번째 요소의 주소(&arr[0])로 생각하시면 됩니다. 그래서 *arr은 그 주소에 있는 값인 1이 나오고, arr은 주소 자체가 나옵니다.


다만 주소는 실행할 때마다, 환경마다 달라지기 때문에 정해진 값이 나오지 않습니다. 또 주소를 %d로 출력하는 것은 원칙적으로 올바른 방법이 아니어서, 64비트 환경에서는 숫자가 잘리거나 음수처럼 이상하게 보일 수도 있습니다.


메모리 주소는 컴퓨터마다 다르게 나온다는 것을 수업에서 언급했으니 아실 겁니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. dhkdxo12님.

arr은 대부분의 표현식에서 배열의 첫 번째 요소인 &arr[0]을 가리키는 포인터로 변환됩니다.

따라서 다음과 같이 구분할 수 있습니다.

int arr[] = {1, 2, 3, 4, 5};

printf("%d\n", *arr);  // 1
printf("%p\n", (void *)arr);  // arr[0]의 메모리 주소
  • *arr: arr이 가리키는 첫 번째 요소의 값인 1을 출력합니다.
  • arr: 배열의 시작 주소를 의미합니다.
  • 주소를 출력할 때 %d를 사용하면 자료형이 맞지 않아 올바르지 않으며, 정의되지 않은 동작이 발생할 수 있습니다. 주소는 %p 형식 지정자를 사용해야 합니다.

즉, printf("%d\n", arr);은 주소를 정수처럼 출력하려는 잘못된 사용이며, 실행 환경에 따라 이상한 값이 출력되거나 문제가 발생할 수 있습니다.

관련해서 배열과 포인터의 차이를 설명한 기존 답변을 참고해 주세요.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

업캐스팅 문제 예시 4번 부모 호출

0

15

1

모의고사 자료 해설이 너무 불친절하네요.

0

38

2

부모의 생성자 출력 관련

0

15

2

이론파트 재탕문제

0

18

0

누락코드

0

18

1

다차원 배열 포인터 질문있습니다

0

29

3

이론 파트 재탕

0

32

1

모의고사 5회

0

30

1

12분 10초 func(values, 0, 1)을 넣을 때

0

37

1

모의고사 1회 4번 문제와 관련한 질문이 있습니다.

0

34

2

재탕문제

0

57

1

재탕문제

0

38

0

파이썬 추가 코드

0

52

1

배열 포인터 출력 표시

0

53

2

포인터 증감 또는 값 증감

0

53

2

실기 이론 통합 요약본 버전

0

65

2

업캐스팅 3번 문제 예시

0

63

2

push pop 설명 되어있는 강의가 몇강인가요?

0

52

1

모의고사 파일오류

1

83

3

모의고사 다운

0

58

1

업캐스팅 원칙

0

70

2

6분46초

0

61

2

공략법

0

71

1

모의고사 파일과 이론파일 업데이트

1

81

3