Basis van programmeren in C
Wat legt de C-standaard vast over de grootte van het type int?
- ADie is in elke implementatie vastgelegd op 32 bits
- BAlleen dat die minstens 16 bits is, ligt vast; de werkelijke grootte bepaalt de implementatie
- CDie is vastgelegd als gelijk aan de breedte van de adressen van de CPU, dus op een 64-bits CPU is die 64 bits
Antwoord en toelichting tonen
Antwoord: B. Alleen dat die minstens 16 bits is, ligt vast; de werkelijke grootte bepaalt de implementatie
De C-standaard eist alleen dat int minstens −32767 tot 32767 kan weergeven (dus 16 bits of meer); de werkelijke grootte bepaalt de implementatie (de combinatie van compiler en doel-CPU). Bij compilers voor een 16-bits microcontroller kan int 16 bits zijn, terwijl het op de meeste pc's en 32-bits microcontrollers 32 bits is. Ook op 64-bits Linux en Windows blijft int in het algemeen 32 bits, en wordt een pointer 64 bits. Als een geheel getal van een vaste grootte nodig is, worden int32_t en vergelijkbare typen uit stdint.h gebruikt.