C++에서 DWORD와 부호 없는 Int의 차이점
이 기사에서는 C++에서 DWORD
의 일반적인 사용에 대해 다룰 것이며, 이는 현재 동일한 값을 가지더라도 unsigned int
와 근본적으로 다릅니다.
C++에서 DWORD
와 unsigned 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
와 같은 유형 정의를 갖는 것은 서로 다른 시스템, 프로그래밍 언어, 컴파일러 등 간에 작업할 때 도움이 되었습니다.
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