Arbejde 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
123int* 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
123int x = 100; // Variable int* pX; // Pointer to an `int` variable pX = &x; // `pX` now points to `x`
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
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; }
*(&variable) == *pVariable
Hvis du forsøger at dereferere en null-pointer, vil compileren give en fejl:
Main.c
1234567#include <stdio.h> int main() { int* pX; printf("x = %p", pX); return 0; }
Swipe to start coding
Bestem størrelsen af int- og double-pointere.
Løsning
Tak for dine kommentarer!
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 2.63
Arbejde 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
123int* 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
123int x = 100; // Variable int* pX; // Pointer to an `int` variable pX = &x; // `pX` now points to `x`
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
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; }
*(&variable) == *pVariable
Hvis du forsøger at dereferere en null-pointer, vil compileren give en fejl:
Main.c
1234567#include <stdio.h> int main() { int* pX; printf("x = %p", pX); return 0; }
Swipe to start coding
Bestem størrelsen af int- og double-pointere.
Løsning
Tak for dine kommentarer!
single