# Programmeren in C/Variabelen
## Variabelen

Een variabele is een deel van het geheugen waarin een waarde bewaard kan worden. Een variabele heeft een naam, de identifier, om er gemakkelijk mee te kunnen werken. Dit principe wordt in de meeste programmeertalen gebruikt (met als meest opvallende uitzondering de functionele programmeertalen). Analoog aan de wiskundige variabele heeft een variabele in C een naam en een waarde. Zo kan bijvoorbeeld een variabele met de naam a gedeclareerd zijn, die door de opdracht a=4 het getal 4 als waarde heeft. Als de variabele b door de opdracht b=a+1 een waarde krijgt, heeft b de waarde 5.

### Declaratie

In C moet een variabele eerst worden gedeclareerd. De declaratie bepaalt de naam van de variabele, het type van de waarde (bijvoorbeeld een getal, of tekst) en daarmee het aantal bytes dat de waarde in het geheugen in kan nemen. Er kan maar eenmaal een variabele gedeclareerd worden met een bepaalde naam binnen het gebied waar de variabele geldig is. Een voorbeeld van een declaratie is het volgende statement:
Hiermee wordt een variabele genaamd mijnvariabele gedeclareerd met de beginwaarde 10. Het type van de variabele is int, afkorting van integer, oftewel een geheel getal. Dus de variabele mijnvariabele kan alléén gehele (postitieve of negatieve) getallen bevatten. Deze variabele heeft een maximale waarde van minimaal 32.767 (vaak 2.147.483.647) en gebruikt minimaal 2 (maar vaak 4) bytes in het geheugen. Waarom dat is komt in het volgende hoofdstuk over datatypen ter sprake.

#### Naamgeving

Een variabele kan niet zomaar elke naam krijgen. Het is natuurlijk belangrijk om een beschrijvende naam te kiezen voor de variabele, zodat later ook makkelijk te zien is wat het doel is van elke variabele, maar er zijn enkele beperkingen. Zo mogen alleen letters uit het bekende Latijnse alfabet gebruikt worden, dus A tot en met Z in zowel hoofd- als kleine letters, en cijfers en de underscore (_). Andere tekens of letters uit andere alfabetten zijn niet toegestaan. Verder mag een variabelennaam niet met een cijfer beginnen en mag het geen sleutelwoord uit de programmeertaal zijn. De lijst met sleutelwoorden staat in de Referentie.
Hoewel het wel is toegestaan om een variabelenaam met een underscore te beginnen, wordt het toch sterk afgeraden. Vaak zijn dit soort namen gereserveerd voor bepaald gebruikt door de bibliotheek of compiler, nu of in de toekomst.
Enkele voorbeelden van geldige variabelenamen:
Voorbeelden van ongeldige variabelenamen:

#### Const

Door een variabele te declareren met het sleutelwoord const wordt het een constante (dus technisch gezien geen variabele meer). Hierbij is het verplicht ook een startwaarde op te geven. Constanten zijn bedoeld om niet meer veranderd te worden nadat ze eenmaal gedeclareerd zijn. De compiler zal op z'n minst een waarschuwing geven als aan een constante een nieuwe waarde wordt toegewezen. Constanten zijn vooral handig om zogenaamde 'magic numbers' te voorkomen. Bijvoorbeeld de waarde π met het type float kan als constante gedefinieerd worden als volgt:
Door in de verdere code de constante pi te gebruiken, hoeft niet steeds de cijferreeks gebruikt te worden, met kans op fouten, en wordt de code ook beter leesbaar.