C++에서 DWORD와 부호 없는 Int의 차이점

Muhammad Husnain 2023년6월20일
C++에서 DWORD와 부호 없는 Int의 차이점

이 기사에서는 C++에서 DWORD의 일반적인 사용에 대해 다룰 것이며, 이는 현재 동일한 값을 가지더라도 unsigned int와 근본적으로 다릅니다.

C++에서 DWORDunsigned int의 차이점

정의에 따르면 unsigned int최소 16비트 길이입니다. unsigned int는 일반적으로 플랫폼에 따라 다릅니다.

DWORD더블 워드를 의미합니다.

Microsoft WORD는 16비트 길이이므로 DWORD는 모든 플랫폼에서 32비트입니다. 또한 DWORD는 C++의 유형이 아닙니다. 대신 <windows.h>에 정의됩니다.

코드가 DWORD를 예상할 때마다 DWORD를 사용하십시오. (이 기사를 작성하는 시점에서) unsigned int도 마찬가지로 작동합니다.

C++의 향후 버전은 unsigned int(C++ 지침을 여전히 준수함)에 대해 약간 다른 정의를 가질 수 있지만 DWORD는 변경되지 않을 것입니다.

Microsoft는 DWORD를 정의하기로 선택했으며 다른 많은 API 개발자가 해당 유형을 정의하기로 선택한 이유를 설명합니다.

Microsoft는 서로 다른 CPU 아키텍처, 즉 16비트 및 32비트 프로세서와 최근에는 64비트 프로세서의 문제를 해결해야 했습니다.

1980년대에는 C++ 컴파일러도 표준화되지 않았습니다. 서로 다른 OS 간에는 어느 정도의 호환성이 필요했습니다.

또한 동일한 개발 API(현재 WinAPI로 알려짐)가 데스크톱, 모바일 칩, 임베디드 시스템 및 서버에 사용되었습니다.

따라서 DWORD와 같은 유형 정의를 갖는 것은 서로 다른 시스템, 프로그래밍 언어, 컴파일러 등 간에 작업할 때 도움이 되었습니다.

Muhammad Husnain avatar Muhammad Husnain avatar

Husnain is a professional Software Engineer and a researcher who loves to learn, build, write, and teach. Having worked various jobs in the IT industry, he especially enjoys finding ways to express complex ideas in simple ways through his content. In his free time, Husnain unwinds by thinking about tech fiction to solve problems around him.

LinkedIn