Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Pointers | Pointers
C Basics

bookPointers

Using the reference operator & and the dereference operator *, we can create and work with pointers.

A pointer is a data type, just like int, char, or double. The pointer is designed to store an address, which you can obtain using the & operator. To declare a pointer, prepend it with the * character.

int* intPointer; // pointer to an int variable
double* doublePointer; // pointer to a double variable
char* charPointer; // pointer to a char variable

In essence, a pointer is a variable that holds the address of another object.

int x = 100; // variable
int* pX; // pointer to an int variable
pX = &x; // pX now points to x

Note

Typically, pointers are named by prefixing the letter p to the name of the object they're pointing to.

When you dereference a pointer, you access the value of the variable it points to.

Main.c

Main.c

copy
1234567891011121314
#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

*(&variable) == *pVariable

If you attempt to dereference a null pointer, the compiler will raise an error:

Example provided to showcase the mistake

Main.c

Main.c

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

Swipe to start coding

Determine the size of int and double pointers.

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

Suggested prompts:

Opsummér dette kapitel

Explain code

Explain why doesn't solve task

close

Awesome!

Completion rate improved to 2.63

bookPointers

Stryg for at vise menuen

Using the reference operator & and the dereference operator *, we can create and work with pointers.

A pointer is a data type, just like int, char, or double. The pointer is designed to store an address, which you can obtain using the & operator. To declare a pointer, prepend it with the * character.

int* intPointer; // pointer to an int variable
double* doublePointer; // pointer to a double variable
char* charPointer; // pointer to a char variable

In essence, a pointer is a variable that holds the address of another object.

int x = 100; // variable
int* pX; // pointer to an int variable
pX = &x; // pX now points to x

Note

Typically, pointers are named by prefixing the letter p to the name of the object they're pointing to.

When you dereference a pointer, you access the value of the variable it points to.

Main.c

Main.c

copy
1234567891011121314
#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

*(&variable) == *pVariable

If you attempt to dereference a null pointer, the compiler will raise an error:

Example provided to showcase the mistake

Main.c

Main.c

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

Swipe to start coding

Determine the size of int and double pointers.

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