Sto avendo difficoltà a capire, quali sono stati gli obiettivi dei creazione del short
, int
elong
tipi di dati in C?
Il motivo per cui chiedo è che non sembra che le loro dimensioni siano limitate: potrebbero essere di qualsiasi dimensione, purché short
siano più piccole di unint
, per esempio.
In quali situazioni, quindi, dovresti usare un unsigned int
o unsigned long
, ad esempio, invece di un size_t
, quando farlo non offre alcuna speranza di compatibilità binaria?
(Se non conosci le dimensioni, come sapresti quando scegliere quale?)
sizeof(short) == 2 * sizeof(char)
o simili?
sizeof(char) == sizeof(short)
e ha senso. Sfortunatamente, non esiste alcun modo per specificare i tipi di numeri integrali in modo che possano adattarsi a tutte le piattaforme possibili ed esistenti.
<stdint.h>