C ''int''의 크기가 2바이트입니까 아니면 4바이트입니까?

C Int Ui Keugiga 2baiteu Ibnikka Animyeon 4baiteu Ibnikka



의 크기 ' 정수 '는 C 언어에서 종종 독자의 마음에 혼란을 일으키는 뜨거운 주제입니다. C가 개발될 당시 ' 정수 ' 였다 2바이트 그러나 시간이 흐르고 업데이트 버전이 출시됨에 따라 일반적으로 크기에 도달했습니다. 4 바이트 . 그러나 “ 정수 ”는 코딩에 사용하는 컴파일러와 플랫폼에 따라 다를 수 있습니다.

'의 크기가 헷갈리신다면 정수 ” 여부 2바이트 또는 4 바이트 , 이 문서의 지침을 따르십시오.

C 'int'의 크기가 2바이트인지 4바이트인지

초기에 C 언어가 도입되었을 때 개발자 마음에 떠오른 한 가지는 이 언어를 가능한 한 단순하게 만드는 것이었습니다. 당시 컴퓨터는 16비트 프로세서를 사용했기 때문에 당시 ' 정수 ”는 2바이트로 고정되었습니다. 시간이 지남에 따라 시스템 컴퓨팅 성능이 증가하고 개발자는 ' 정수 ” C에서 4바이트로. 그 이유는 C 프로그래머가 큰 값을 사용하고 시스템에서 더 강력한 프로그램을 개발할 수 있도록 하기 위함입니다.







C에서 'int' 크기에 영향을 미치는 요인

'에 영향을 미치는 세 가지 요소가 있습니다. 정수 ” 크기는 다음과 같습니다.



1: 그만큼 시스템의 프로세서 '에 큰 영향을 미칩니다. 정수 크기. 32비트 아키텍처의 경우 ' 정수 ” 크기는 4바이트입니다. 그 이유는 1바이트는 8비트로 구성되어 있으므로 8비트/바이트에 4바이트를 곱하면 32비트가 되기 때문입니다.



2: 그만큼 운영 체제 버전도 ' 정수 ” 크기와 64비트 운영 체제는 4바이트를 사용합니다. 정수 ” 유형. 그러나 이것은 여전히 ​​사용 중인 컴파일러 또는 플랫폼과 같은 다른 요인에 따라 달라집니다.





삼: 그만큼 컴파일러 '에도 영향을 미칩니다. 정수 ” 크기는 C에서 사용되며 C 프로그래머가 선택에 따라 'int'의 크기를 구성할 수 있도록 하는 컴파일러가 있습니다.

다른 컴파일러는 C 언어의 다른 구현을 가질 수 있습니다. 즉, C '를 볼 수 있습니다. 정수 데이터 형식 다른 방법으로. 가장 일반적으로 컴파일러는 ' 정수 ” C 언어로 2바이트 또는 4 바이트 크기. ㅏ 2바이트 '정수' 차지할 것이다 저장할 수 있는 값이 다음과 같이 표시되는 메모리 바이트 -32768 에게 32767 . 대조적으로, 4바이트 '정수' 차지할 것이다 값이 다음과 같이 표시되는 메모리 바이트 -2147483648 에게 2147483647 .



그러나 '의 크기를 확인하면 정수 ” 최신 C++ 컴파일러에서는 다음과 같은 답을 제공합니다.

#include
#include
#include <제한.h>

정수 메인 ( 정수 인수, 문자 ** 인수 ) {
printf ( 'Int_MAX : %d \N ' , INT_MAX ) ;
printf ( 'int_MIN : %d \N ' , INT_MIN ) ;
반품 0 ;
}

위의 코드에서 우리는 ' 정수 ” 기능을 사용하여 int_MAX() 그리고 int_MIN() '의 크기가 정수 ' 이다 4 바이트 .

산출

대부분의 최신 컴파일러는 C 언어의 크기가 'int'는 4바이트입니다. . 즉, 일부 컴파일러는 여전히 2바이트 '정수' 즉, 개발자는 프로그램이 올바르게 작동하는지 확인하기 위해 사용 중인 컴파일러를 확인해야 합니다.

결론

정확한 C 'int'의 크기 데이터 유형은 사용 중인 컴파일러에 따라 다를 수 있습니다. 가장 일반적으로, 그것은 4 바이트 , 더 넓은 범위의 값을 저장할 수 있습니다. 즉, 일부 컴파일러는 여전히 다음과 같은 방식으로 C 언어를 구현할 수 있습니다. C 'int'의 크기 2바이트입니다. 궁극적으로 프로그래머는 정확한 코드를 결정하는 데 사용되는 컴파일러를 알고 있어야 합니다. C 'int'의 크기 .