Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Arbejde med Pegere | Pointere
C-Grundlæggende

bookArbejde med Pegere

Ved at bruge referenceoperatoren & og dereferenceoperatoren *, kan vi oprette og arbejde med pegepinde.

En pegepind er en datatyppe, ligesom int, char eller double. Pegepinden er designet til at gemme en adresse, som du kan få ved at bruge &-operatoren. For at erklære en pegepind, skal du sætte *-tegnet foran.

main.c

main.c

copy
123
int* intPointer; // Pointer to an `int` variable double* doublePointer; // Pointer to a `double` variable char* charPointer; // Pointer to a `char` variable

I bund og grund er en pegepind en variabel, der indeholder adressen på et andet objekt.

main.c

main.c

copy
123
int x = 100; // Variable int* pX; // Pointer to an `int` variable pX = &x; // `pX` now points to `x`
Note
Bemærk

Typisk navngives pointere ved at tilføje bogstavet p foran navnet på det objekt, de peger på.

Når du derefererer en pointer, tilgår du værdien af den variabel, den peger på.

Main.c

Main.c

copy
12345678910111213
#include <stdio.h> int main() { int x = 22543; // Variable int* pX = &x; // `pX` is pointer to `x` printf("The value of `pX` is %p\n", pX); // Value of pointer `pX` printf("The value of `x` by pointer `pX` is %d\n", *pX); // Pointer dereference return 0; }
Note
Bemærk

*(&variable) == *pVariable

Hvis du forsøger at dereferere en null-pointer, vil compileren give en fejl:

Main.c

Main.c

copy
1234567
#include <stdio.h> int main() { int* pX; printf("x = %p", pX); return 0; }
Opgave

Swipe to start coding

Bestem størrelsen af int- og double-pointere.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 6. Kapitel 3
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

close

Awesome!

Completion rate improved to 2.63

bookArbejde med Pegere

Stryg for at vise menuen

Ved at bruge referenceoperatoren & og dereferenceoperatoren *, kan vi oprette og arbejde med pegepinde.

En pegepind er en datatyppe, ligesom int, char eller double. Pegepinden er designet til at gemme en adresse, som du kan få ved at bruge &-operatoren. For at erklære en pegepind, skal du sætte *-tegnet foran.

main.c

main.c

copy
123
int* intPointer; // Pointer to an `int` variable double* doublePointer; // Pointer to a `double` variable char* charPointer; // Pointer to a `char` variable

I bund og grund er en pegepind en variabel, der indeholder adressen på et andet objekt.

main.c

main.c

copy
123
int x = 100; // Variable int* pX; // Pointer to an `int` variable pX = &x; // `pX` now points to `x`
Note
Bemærk

Typisk navngives pointere ved at tilføje bogstavet p foran navnet på det objekt, de peger på.

Når du derefererer en pointer, tilgår du værdien af den variabel, den peger på.

Main.c

Main.c

copy
12345678910111213
#include <stdio.h> int main() { int x = 22543; // Variable int* pX = &x; // `pX` is pointer to `x` printf("The value of `pX` is %p\n", pX); // Value of pointer `pX` printf("The value of `x` by pointer `pX` is %d\n", *pX); // Pointer dereference return 0; }
Note
Bemærk

*(&variable) == *pVariable

Hvis du forsøger at dereferere en null-pointer, vil compileren give en fejl:

Main.c

Main.c

copy
1234567
#include <stdio.h> int main() { int* pX; printf("x = %p", pX); return 0; }
Opgave

Swipe to start coding

Bestem størrelsen af int- og double-pointere.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 6. Kapitel 3
single

single

some-alt