tipos significado que ejemplos declaracion datos c++ c

c++ - significado - Diferencia entre diferentes tipos de enteros



tipos de variables en c++ y su significado (4)

No hay absolutamente ninguna diferencia entre unsigned int unsigned y unsigned int .

Sin embargo, si ese tipo es una buena uint32_t para uint32_t depende de la implementación; un int podría ser "más corto" que 32 bits.

Me preguntaba cuál es la diferencia entre uint32_t y uint32 , y cuando miré los archivos de encabezado tenía esto:

types.h: /** @brief 32-bit unsigned integer. */ typedef unsigned int uint32; stdint.h: typedef unsigned uint32_t;

Esto solo lleva a más preguntas: ¿Cuál es la diferencia entre

unsigned varName;

y

unsigned int varName;

?

Estoy usando MinGW.


No hay diferencia.

unsigned int = uint32 = uint32_t = unsigned en su caso y unsigned int = unsigned siempre


unsigned y unsigned int son sinónimos por razones históricas; ambos significan "entero sin signo del tamaño más natural para la arquitectura / plataforma de la CPU", que a menudo es (pero no siempre) 32 bits en las plataformas modernas.

<stdint.h> es un encabezado estándar en C99 que se supone que proporciona definiciones de tipo para enteros de tamaños particulares, con la convención de denominación uint32_t .

El <types.h> que está viendo parece no ser estándar y presumiblemente pertenece a algún marco que está usando su proyecto. Su typedef uint32 es compatible con uint32_t . Si debe usar uno u otro en su código es una pregunta para su gerente.


unsigned y unsigned int son sinónimos, como unsigned short [int] y unsigned long [int] .

uint32_t es un tipo que (opcionalmente) está definido por el estándar C. uint32 es solo un nombre que uint32 , aunque se define como la misma cosa.