Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

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.

C-arrays onder de knie krijgen: Declaratie, initialisatie en veelvoorkomende operaties

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
C-arrays onder de knie krijgen: Declaratie, initialisatie en veelvoorkomende operaties

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
C-arrays onder de knie krijgen: Declaratie, initialisatie en veelvoorkomende operaties

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

  1. Ball Grid Array (BGA) Uitgelegd: Complete Gids voor Hoog-dichtheid PCB-technologie
  2. C# Arrays: Declaratie, Initialisatie en Operaties
  3. C# Jagged Arrays: Declaratie, Initialisatie en Toegang
  4. Arrays doorgeven aan functies in C++: een praktische gids
  5. Hoe je 1D- en 2D-arrays doorgeeft aan functies in C – Een praktische gids
  6. De relatie tussen arrays en pointers in C begrijpen
  7. C++ Arrays Ontmaskerd: Declaratie, Initialisatie en Pointer‑Technieken
  8. C++ Dynamische Array‑Allocatie: Praktische Handleiding met Code‑Voorbeelden
  9. MATLAB: Multidimensionale en Speciale Arrays Beheersen
  10. Java array-kopieertechnieken: een uitgebreide gids
  11. Java Arrays Tutorial: Declaratie, Creatie en Initialisatie – Voorbeeldcode