• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

10.2강 20:39 sizeof 배열명

24.01.22 14:41 작성 조회수 73

1

sizeof(power_of_twos)에서 power_of_two를 왜 주소로 인식하지 않는 것인가요?

저는 power_of_twos를 배열명, 즉 주소 상수라고 생각해서 4byte가 나올 것으로 예상했습니다.

답변 1

답변을 작성해보세요.

1

Soobak님의 프로필

Soobak

2024.01.22

안녕하세요, 질문&답변 도우미 Soobak 입니다.

 

sizeof 연산자의 특성과 배열, 포인터의 차이점 때문입니다.

C언어에서 배열의 이름은 배열의 첫 번째 원소를 가리키는 주소로 포인터와 호환이 되는 형태처럼 사용되지만, 배열의 이름을 sizeof 연산자와 함께 사용할 때는 예외적으로 배열 전체의 크기를 반환합니다.