Programmeren in C/Datatypes: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
k Wijzigingen door 188.204.127.102 hersteld tot de versie na de laatste wijziging door 145.52.153.203
k red.
Regel 175:
<BR>
 
Hierbij bevatten long, int en short gehele getallen, waarvoor geldt dat long groter of gelijk aan (in aantal bits) een int is en waarbij een int groter dan of gelijk aan een short is. Hoe deze vertaling juist gebeurt hangt sterk af van het onderliggende platform. Een 32 bit Linux heeft bijvoorbeeld 32 bit voor een int terwijl dit onder DOS wel 16 bit is. Een ''char'' is typisch nog kleiner en heeft de grootte van 1 byte,. deDe bedoeling van een char is een ascii -teken te kunnen bevatten.
 
Een float en een double kunnen reële getallen bevatten waarbij een double een groter bereik en precisie heeft dan een float.
 
Alle types getallen hebben een ''signed'' en een ''unsigned'' variant,. ditDit sleutelwoord wordt voor de variabele geplaatst. Bijvoorbeeld:
{{code
|Taal= C
Regel 188:
Dit declareert een integer zonder tekenbit, dit wil zeggen dat een extra bitpositie vrijkomt voor ''nuttigere'' informatie en dat tweemaal zo grote getallen opgeslagen kunnen worden.
 
Als je een variabele van het type unsigned maakt, kan hij 2twee keer zo grote getallen bevatten als signed, maar alleen positieve. Dit iskomt omdatdoordat je het eerste bit (het teken bit) opoffert, je gaat er vanervan uit dat de getallen standaard positief zijn. En vermits per extra bit het aantal mogelijke waarden verdubbeld kan men dus dubbel zo grote getallen opslaan.
 
Een makkelijke manier om te weten komen hoeveel bytes gereserveerd zijn voor een bepaald datatype kan met behulp van de ''sizeof()'',. dezeDeze wordt tijdens het compileren vervangen door de grootte die gereserveerd wordt voor het datatype (in aantal bytes).
{{code
|Taal= C
Regel 210:
</source>
}}
De uitvoer op een 32 bit Linux systeem is (uit deze uitvoer volgt automatisch dat het een 32 bit -systeem is,. kijkKijk maar naar de grootte van een pointer, deze is 4 byte, dus 32 bit):
 
<pre>
Regel 224:
 
== ''enum'' ==
Een ''enum'' (kort voor ''enumerated type'') is een "opgesomd type". Dat wil zeggen dat alle mogelijke waarden voor zo'n type expliciet worden opgesomd en andere waarden domweg niet bestaan. Dit kan bijzonder handig zijn in die gevallen waar slechts een beperkt aantal waarden nodig is.
{{code
|Taal= C
Regel 238:
</source>
}}
Deze code definieert een datatype 'kleur' als een opsomming met drie mogelijke waarden. Aan elk van deze waarden wordt een numerieke waarde toegekend, maar welke waarde dit precies is, is hier ongedefiniëerdongedefinieerd. Als het wenselijk is dat deze drie een specifieke waarde hebben, kan dat ook:
{{code
|Taal= C
Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.