C Variabele, gegevenstypen, constanten
Wat is een variabele?
Een variabele is een identificatie die wordt gebruikt om een bepaalde waarde op te slaan. Constanten kunnen nooit veranderen op het moment van uitvoering. Variabelen kunnen tijdens de uitvoering van een programma veranderen en de daarin opgeslagen waarde bijwerken.
Een enkele variabele kan op meerdere locaties in een programma worden gebruikt. Een variabelenaam moet betekenisvol zijn. Het moet het doel van de variabele vertegenwoordigen.
Example: Height, age, are the meaningful variables that represent the purpose it is being used for. Height variable can be used to store a height value. Age variable can be used to store the age of a person
Een variabele moet eerst worden gedeclareerd voordat deze ergens in het programma wordt gebruikt. Een variabelenaam wordt gevormd met behulp van tekens, cijfers en een onderstrepingsteken.
Hieronder staan de regels die gevolgd moeten worden bij het aanmaken van een variabele:
- Een variabelenaam mag alleen uit tekens, cijfers en een onderstrepingsteken bestaan.
- Een variabelenaam mag niet beginnen met een getal.
- Een variabelenaam mag geen witruimte bevatten.
- Een variabelenaam mag niet uit een trefwoord bestaan.
- 'C' is een hoofdlettergevoelige taal, wat betekent dat een variabele met de naam 'age' en 'AGE' verschillend zijn.
Hieronder staan voorbeelden van geldige variabelenamen in een 'C'-programma:
height or HEIGHT _height _height1 My_name
Hieronder staan voorbeelden van ongeldige variabelenamen in een 'C'-programma:
1height Hei$ght My name
We declareren bijvoorbeeld een geheel getalvariabele mijn_variabele en wijs het de waarde 48 toe:
int my_variable; my_variable = 48;
Overigens kunnen we een variabele zowel declareren als initialiseren (een initiële waarde toekennen) in één enkele instructie:
int my_variable = 48;
Datatypen
'C' biedt verschillende gegevenstypen om het voor een programmeur gemakkelijk te maken om een geschikt gegevenstype te selecteren op basis van de vereisten van een toepassing. Hieronder volgen de drie gegevenstypen:
- Primitieve gegevenstypen
- Afgeleide gegevenstypen
- Door de gebruiker gedefinieerde gegevenstypen
Er zijn vijf primaire fundamentele gegevenstypen,
- int voor gehele gegevens
- char voor tekengegevens
- float voor drijvendekommagetallen
- dubbel voor drijvendekommagetallen met dubbele precisie
- komen te vervallen
Array, functies, pointers, structuren zijn afgeleide gegevenstypen. De programmeertaal 'C' biedt uitgebreidere versies van de hierboven genoemde primaire gegevenstypen. Elk gegevenstype verschilt van elkaar in grootte en bereik. De volgende tabel toont de grootte en het bereik van elk gegevenstype.
Data type | Grootte in bytes | RANGE |
---|---|---|
Char of ondertekende char | 1 | -128 naar 127 |
Ongetekend char | 1 | 0 tot 255 |
int of ondertekend int | 2 | -32768 naar 32767 |
Niet-ondertekende int | 2 | 0 tot 65535 |
Korte int of niet-ondertekende korte int | 2 | 0 tot 255 |
Gesigneerd korte int | 2 | -128 naar 127 |
Lange int of ondertekende lange int | 4 | -2147483648 naar 2147483647 |
Niet-ondertekende lange int | 4 | 0 tot 4294967295 |
drijven | 4 | 3.4E-38 tot 3.4E+38 |
verdubbelen | 8 | 1.7E-308 tot 1.7E+308 |
Lange dubbele | 10 | 3.4E-4932 tot 1.1E+4932 |
Note: In C is er geen Booleaans gegevenstype.
Gegevenstype geheel getal
Geheel getal is niets anders dan een geheel getal. Het bereik voor een integer-gegevenstype varieert van machine tot machine. Het standaardbereik voor een gegevenstype met gehele getallen is -32768 tot 32767.
Een geheel getal bestaat doorgaans uit 2 bytes, wat betekent dat het in totaal 16 bits aan geheugen verbruikt. Een enkele gehele waarde neemt 2 bytes geheugen in beslag. Een integer-gegevenstype is verder onderverdeeld in andere gegevenstypen, zoals korte int, int en lange int.
Elk gegevenstype verschilt qua bereik, ook al behoort het tot de familie van integer-gegevenstypen. De grootte verandert mogelijk niet voor elk gegevenstype van de geheeltallige familie.
De korte int wordt meestal gebruikt voor het opslaan van kleine getallen, int wordt gebruikt voor het opslaan van gemiddelde gehele getallen en de lange int wordt gebruikt voor het opslaan van grote gehele getallen.
Wanneer we een gegevenstype met gehele getallen willen gebruiken, plaatsen we int vóór de identificatie, zoals:
int age;
Hier is leeftijd een variabele van een integer-gegevenstype dat kan worden gebruikt om gehele waarden op te slaan.
Gegevenstype met drijvende komma
Net als gehele getallen kunnen we in het 'C'-programma ook gebruik maken van drijvende-kommagegevenstypen. Het trefwoord 'float' wordt gebruikt om het gegevenstype met drijvende komma weer te geven. Het kan een drijvende-kommawaarde bevatten, wat betekent dat een getal een breuk en een decimaal deel heeft. Een drijvende-kommawaarde is een reëel getal dat een decimaalpunt bevat. Het gegevenstype Integer slaat het decimale deel niet op. Daarom kunnen we floats gebruiken om het decimale deel van een waarde op te slaan.
Over het algemeen kan een float maximaal 6 precisiewaarden bevatten. Als de float niet voldoende is, kunnen we gebruikmaken van andere gegevenstypen die grote floating point-waarden kunnen bevatten. Het gegevenstype double en long double worden gebruikt om reële getallen op te slaan met een precisie tot respectievelijk 14 en 80 bits.
Bij gebruik van een floating point getal moet een keyword float/double/long double voor een identifier worden geplaatst. De geldige voorbeelden zijn,
float division; double BankBalance;
Karakter gegevenstype
Tekengegevenstypen worden gebruikt om een enkele tekenwaarde tussen enkele aanhalingstekens op te slaan.
Een tekengegevenstype neemt maximaal 1 byte geheugenruimte in beslag.
Voorbeeld,
Char letter;
Gegevenstype ongeldig
Een ongeldig gegevenstype bevat of retourneert geen enkele waarde. Het wordt meestal gebruikt voor het definiëren van functies in 'C'.
Voorbeeld,
void displayData()
Typ declaratie van een variabele
int main() { int x, y; float salary = 13.48; char letter = 'K'; x = 25; y = 34; int z = x+y; printf("%d \n", z); printf("%f \n", salary); printf("%c \n", letter); return 0;}
Output:
59 13.480000 K
We kunnen meerdere variabelen met hetzelfde gegevenstype op één regel declareren door ze te scheiden met een komma. Let ook op het gebruik van formaatspecificaties in printf uitvoerfunctie float (%f) en char (%c) en int (%d).
constanten
Constanten zijn de vaste waarden die nooit veranderen tijdens de uitvoering van een programma. Hieronder staan de verschillende typen constanten:
Integer constanten
Een integer-constante is niets anders dan een waarde die bestaat uit cijfers of getallen. Deze waarden veranderen nooit tijdens de uitvoering van een programma. Integer-constanten kunnen octaal, decimaal en hexadecimaal zijn.
- Decimale constante bevat cijfers van 0-9, zoals:
Example, 111, 1234
Hierboven staan de geldige decimale constanten.
- Octale constante bevat cijfers van 0-7, en dit soort constanten worden altijd voorafgegaan door 0.
Example, 012, 065
Hierboven staan de geldige octale constanten.
- Hexadecimale constante bevat een cijfer van 0-9 en tekens van AF. Hexadecimale constanten worden altijd voorafgegaan door 0X.
Example, 0X2, 0Xbcd
Hierboven staan de geldige hexadecimale constanten.
De octale en hexadecimale gehele constanten worden zeer zelden gebruikt bij het programmeren met 'C'.
Karakterconstanten
Een tekenconstante bevat slechts één teken tussen een enkel aanhalingsteken (”). We kunnen de karakterconstante ook weergeven door er een ASCII-waarde van op te geven.
Example, 'A', '9'
Hierboven vindt u voorbeelden van geldige karakterconstanten.
Tekenreeksconstanten
Een tekenreeksconstante bevat een reeks tekens tussen dubbele aanhalingstekens ("").
Example, "Hello", "Programming"
Dit zijn de voorbeelden van geldige tekenreeksconstanten.
Echte constanten
Zoals integer-constanten die altijd een integer-waarde bevatten. 'C' biedt ook reële constanten die een decimale punt of een breukwaarde bevatten. De reële constanten worden ook wel drijvende-kommaconstanten genoemd. De reële constante bevat een decimaalteken en een breukwaarde.
Example, 202.15, 300.00
Dit zijn de geldige reële constanten in 'C'.
Een echte constante kan ook worden geschreven als:
Mantissa e Exponent
Als u bijvoorbeeld een waarde wilt declareren die niet verandert, zoals de klassieke cirkelconstante PI, zijn er twee manieren om deze constante te declareren
- Via de const trefwoord in een variabeledeclaratie die een opslaggeheugen reserveert
- Via de #define pre-processorrichtlijn die geen geheugen gebruikt voor opslag en zonder een puntkomma aan het einde van die instructie te plaatsen
#include <stdio.h> int main() { const double PI = 3.14; printf("%f", PI); //PI++; // This will generate an error as constants cannot be changed return 0;}
#include <stdio.h> #define PI 3.14 int main() { printf("%f", PI); return 0;}
Samenvatting
- Een constante is een waarde die tijdens de uitvoering van een programma niet verandert.
- Een variabele is een identificatie die wordt gebruikt om een waarde op te slaan.
- Er zijn vier veelgebruikte gegevenstypen, zoals int, float, char en a void.
- Elk gegevenstype verschilt qua grootte en bereik van elkaar.