C LanguageI bit-field


introduzione

La maggior parte delle variabili in C ha una dimensione che è un numero intero di byte. I campi di bit sono una parte di una struttura che non occupa necessariamente un numero intero di byte; possono un numero qualsiasi di bit. Più campi di bit possono essere raggruppati in un'unica unità di memoria. Fanno parte dello standard C, ma ci sono molti aspetti che sono definiti dall'implementazione. Sono una delle parti meno trasportabili di C.

Sintassi

  • identificatore del tipo identificativo: dimensione;

Parametri

Parametro Descrizione
tipo-specificatore signed , unsigned , int o _Bool
identificatore Il nome per questo campo nella struttura
taglia Il numero di bit da utilizzare per questo campo

Osservazioni

Gli unici tipi portatili per campi bit sono signed , unsigned o _Bool . Il tipo plain int può essere usato, ma lo standard dice (§6.7.2¶5) ... per i campi bit, è definito dall'implementazione se lo specificatore int designa lo stesso tipo di signed int o lo stesso tipo di unsigned int .

Altri tipi di interi possono essere consentiti da un'implementazione specifica, ma il loro utilizzo non è portabile.

I bit-field Esempi correlati