• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

32bit 와 64bit 자료형 크기

24.01.25 19:28 작성 조회수 191

0

정수형 강의 내용 중 long 자료형 크기에 대해 궁금한 점이 생겨 질문드립니다!

 

  1. 64비트 기준으로, long 자료형이 4바이트라고 설명해 주셨는데, sizeof 연산자로 long 변수 크기를 확인할 경우 8바이트로 나오게 되어 질문드립니다.

  2. 제목과 같이 32와 64간 자료형의 크기를 비교한 자료가 있을까요?? 검색 결과 작성자마다 약간씩 차이를 보여 질문드립니다.

 

감사합니다.

답변 1

답변을 작성해보세요.

1

개발환경에 차이가 있는 것 같습니다.

#include <stdio.h>
void main() {
   printf("%zd\n", sizeof(long));
}

상기 코드의 실행결과는 다음과 같습니다.

image

또한 다음과 같이 다시 확인해도 차이는 없습니다.

#include <stdio.h>
#include <limits.h>
void main() {
   printf("%ld\n", LONG_MAX);
   printf("%d\n", INT_MAX);
}

 

image

자료형별 표현 범위 문제를 확인해보는 것이 쉽게 표준을 확인 할 수 있는 방법이라 하겠습니다. 아니면 관련해 C99 표준 문서를 ISO에서 확인하시면 됩니다. 참고하시기 바랍니다. 😄

https://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf

 

 

 

 

채널톡 아이콘