Bit alanı (bit field)
C'nin bir struct içindeki tamsayının tek tek bitlerini adlandırma yöntemi: okuması keyifli, ama belleğe nasıl yerleşeceği neredeyse tamamen belirsiz.
unsigned ready : 1; yazdığınızda struct üyesi tek bit genişliğinde olur ve reg.ready = 1 sıradan bir atama gibi okunur. Bir donanım yazmacını tarif ederken bu cazip görünür. Tuzak şu: standart bit sırasını, dolgu (padding) miktarını ve alttaki depolama birimini derleyiciye bırakır; dolayısıyla aynı struct farklı derleyicilerde ya da endianness'i farklı mimarilerde başka biçimde dizilebilir.
Her yazma işlemi ayrıca bir oku-değiştir-yaz döngüsüdür ve okunduğunda temizlenen durum bitlerini ezebilir. CMSIS'in ve çoğu üretici başlık dosyasının bit alanı yerine maske ve kaydırma kullanmasının, MISRA C'nin de bit alanlarını ciddi biçimde kısıtlamasının nedeni budur.