코드에 부호없는 정수로 size_t
을 사용하고 있습니다. 장점은 컴퓨터가 64 비트를 지원하면 size_t
은 unsigned long long int
이고, 그렇지 않으면 unsigned int
입니다. 내 코드는 32 비트 및 64 비트 플랫폼에서 실행될 수 있습니다.C++ 정수 유형 자동 64 비트
비슷한 부호있는 정수가 있습니까? 플랫폼이 32 비트 만 지원하는 경우 int
이고 플랫폼이 64 비트를 지원하면 long long int
입니다.
나는 플래그를 설정하여이를 달성 할 수
이#ifdef USE_INT64
#define MY_INT int
#else
#define MY_INT long long int
#endif
그런 MY_INT
를 사용합니다. 그러나 USE_INT64
을 정의하고이 코드를 모든 코드에 포함해야합니다. size_t
과 비슷한 것이 있으면 좋을 것입니다.
대신 'uint64_t'를 사용 하시겠습니까? –
cstdint에는 정수 유형이 많이 있습니다 (http://en.cppreference.com/w/cpp/header/cstdint). 적절한 것을 골라라. –
C++ 11부터 * 모든 * 호환 C++ 컴파일러는 64 비트 정수를 지원합니다. 그렇다면 일부 시스템에서는 32 비트 정수를 사용하고 다른 시스템에서는 64 비트 정수를 사용하는 것이 합리적 일 수 있지만 먼저 선택 방법을 정의해야합니다. ''표준 헤더도 참조하십시오.이 헤더는 정확한 너비를 가진 정수 유형과 적어도 * 지정된 너비를 가진 "빠름"및 "최소"유형을 정의합니다. 'int_fast32_t'는 당신이 원하는 것일 수도 있습니다. –