C-arrays onder de knie krijgen: Declaratie, initialisatie en veelvoorkomende operaties
C-arrays onder de knie krijgen
Ontdek hoe je C-arrays declareert, initialiseert en manipuleert met praktische voorbeelden, best-practice tips en veiligheidsrichtlijnen.

In C is een array een aaneengesloten geheugenblok dat meerdere waarden van hetzelfde type opslaat. Om bijvoorbeeld 100 integers te houden, schrijf je:
int data[100];
Een array declareren
Gebruik de syntaxis:
dataType arrayName[arraySize];
Voorbeeld:
float mark[5];
Hier kan mark vijf float-waarden opslaan. Let op: de grootte en het type zijn na declaratie vast.
Elementen benaderen
Array-indices beginnen bij 0. Voor een array van grootte n is het laatste element array[n-1]. Voorbeeld:
mark[0] // eerste element
mark[4] // laatste element voor grootte 5

Belangrijke punten:
- Eerste index is 0, niet 1.
- Voor
float(4 bytes) verhoogt elke volgende index het adres met 4. - Nooit verder dan
array[n-1]benaderen om ongedefinieerd gedrag te vermijden.
Een array initialiseren
Initialiseren bij declaratie:
int mark[5] = {19, 10, 8, 17, 9};
Of laat de compiler de grootte afleiden:
int mark[] = {19, 10, 8, 17, 9};
Resulterende waarden:
mark[0] = 19
mark[1] = 10
mark[2] = 8
mark[3] = 17
mark[4] = 9

Elementen wijzigen
int mark[5] = {19, 10, 8, 17, 9};
mark[2] = -1; // derde element
mark[4] = 0; // vijfde element
In- & Output
Inlezen in een array-element:
scanf("%d", &mark[2]); // derde element
scanf("%d", &mark[i-1]); // i-de element (1-gebaseerd)
Printen van een element:
printf("%d", mark[0]); // eerste
printf("%d", mark[2]); // derde
printf("%d", mark[i-1]); // i-de
Voorbeeld 1: Array In-/Output
#include <stdio.h>
int main() {
int values[5];
printf("Voer 5 integers in: ");
for (int i = 0; i < 5; ++i) {
scanf("%d", &values[i]);
}
printf("Integers tonen:\n");
for (int i = 0; i < 5; ++i) {
printf("%d\n", values[i]);
}
return 0;
}
Output
Voer 5 integers in: 1 -3 34 0 3 Integers tonen: 1 -3 34 0 3
Voorbeeld 2: Gemiddelde berekenen
#include <stdio.h>
int main() {
int marks[10], n, sum = 0;
printf("Voer aantal elementen in: ");
scanf("%d", &n);
for (int i = 0; i < n; ++i) {
printf("Voer getal%d: ", i + 1);
scanf("%d", &marks[i]);
sum += marks[i];
}
int average = sum / n;
printf("Gemiddelde = %d", average);
return 0;
}
Output
Voer n: 5 Voer getal1: 45 Voer getal2: 35 Voer getal3: 38 Voer getal4: 31 Voer getal5: 49 Gemiddelde = 39
Let op uit-de-grenzen toegang
Het benaderen van testArray[12] wanneer de array slechts 10 elementen heeft leidt tot ongedefinieerd gedrag — crashes, gecorrupte data, of stille fouten. Valideer altijd indices voor het benaderen.
Meerdimensionale arrays
Tot nu toe hebben we eendimensionale arrays behandeld. In de volgende tutorial verkennen we meerdimensionale arrays (arrays van arrays) en hoe je ze effectief gebruikt.
C Taal
- Ball Grid Array (BGA) Uitgelegd: Complete Gids voor Hoog-dichtheid PCB-technologie
- C# Arrays: Declaratie, Initialisatie en Operaties
- C# Jagged Arrays: Declaratie, Initialisatie en Toegang
- Arrays doorgeven aan functies in C++: een praktische gids
- Hoe je 1D- en 2D-arrays doorgeeft aan functies in C – Een praktische gids
- De relatie tussen arrays en pointers in C begrijpen
- C++ Arrays Ontmaskerd: Declaratie, Initialisatie en Pointer‑Technieken
- C++ Dynamische Array‑Allocatie: Praktische Handleiding met Code‑Voorbeelden
- MATLAB: Multidimensionale en Speciale Arrays Beheersen
- Java array-kopieertechnieken: een uitgebreide gids
- Java Arrays Tutorial: Declaratie, Creatie en Initialisatie – Voorbeeldcode