Diferencia entre DWORD y Unsigned Int en C++
Este artículo cubrirá el uso general de DWORD
en C++, y es fundamentalmente diferente de “int sin firmar”, aunque actualmente tienen el mismo valor.
Diferencia entre DWORD
y int sin firmar
en C++
Por definición, el int sin firmar
tiene al menos 16 bits de largo. El int sin firmar
suele ser específico de la plataforma.
El DWORD
significa Doble Palabra
.
Como Microsoft WORD
tiene una longitud de 16 bits, DWORD
tiene 32 bits en todas las plataformas. Además, DWORD
no es un tipo en C++; en cambio, se define en <windows.h>
.
Utilice un DWORD
siempre que el código esté esperando un DWORD
, aunque (en el momento de escribir este artículo) el int sin firmar
funcionaría igual de bien.
Las versiones futuras de C++ podrían tener una definición ligeramente diferente de “int sin firmar” (que aún se adherirá a las pautas de C++), mientras que es poco probable que DWORD
cambie.
Microsoft eligió definir su DWORD
y por qué muchos otros desarrolladores de API eligen definir sus tipos.
Microsoft tuvo que solucionar los problemas de las diferentes arquitecturas de CPU, es decir, tener procesadores de 16 y 32 bits y, últimamente, procesadores de 64 bits.
En la década de 1980, los compiladores de C++ tampoco estaban estandarizados. Se necesitaba un cierto grado de compatibilidad entre los diferentes sistemas operativos.
Además, la misma API de desarrollo (ahora conocida como WinAPI
) se usó para computadoras de escritorio, chips móviles, sistemas integrados y servidores.
Por lo tanto, tener definiciones de tipo como DWORD
ayudó cuando se trabajaba entre diferentes sistemas, lenguajes de programación, compiladores, etc.
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