long은 최소 32비트가 보장되나요?
C 표준에서는 적분 데이터 저장 측면에서 다음과 같은 우선 순위를 규정합니다. 기본 유형:
sizeof(char) ≤ sizeof(short int) ≤ sizeof(int) ≤ sizeof(long int)
char 크기에 대한 추가 설명은 섹션 1.7/1에 제공됩니다.
The fundamental storage unit in the C++ memory model is the byte. A byte is at least large enough to contain any member of the implementation’s basic character set and is composed of a contiguous sequence of bits, the number of which is implementation-defined.
이는 sizeof(char)가 1에서 n 사이일 수 있음을 나타냅니다. 여기서 n은 구현에 따라 다릅니다. 그러나 C 표준에는 Long이 수용할 수 있는 값에 대한 최소 제한을 정의하는 C 표준(1.2/1)에 대한 지식도 필요합니다.
LONG_MIN = -2147483647 // -(2^31 - 1) LONG_MAX = +2147483647 // 2^31 - 1
long은 양수와 음수를 모두 보유할 수 있어야 하므로 값이 이 제한에 도달하면 long의 크기는 최소 32비트여야 한다는 것이 논리적으로 추론됩니다.
간단히 말하면 C 표준에서는 바이트의 비트 수를 지정하지 않은 반면 LONG_MIN에 적용되는 최소 제한은 LONG_MAX는 long이 최소 32비트의 저장 공간을 가져야 함을 의미합니다.
위 내용은 C에서 `long`은 최소 32비트가 보장됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!