Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara References and Dereferences | Puntatori
Fondamenti Di C
Sezione 6. Capitolo 2
single

single

References and Dereferences

Scorri per mostrare il menu

Pointers are built around two operators:

  • The address-of operator &.
  • The dereference operator *.

Address-of Operator

The address-of operator, represented by &, allows us to directly interact with our computer's RAM. Using & lets you obtain the actual memory address of an object.

Main.c

Main.c

123456789101112
#include <stdio.h> int main() { int x = 100; printf("Value of variable: %d\n", x); printf("Address of variable into RAM: %p\n", &x); // using reference operator `&` for getting address return 0; }
Note
Note

The format specifier used to print addresses (pointers) is %p.

Addresses are typically expressed in hexadecimal notation.

hexadecimal notation

Dereference Operator

Conversely, the * operator gives you the resident's name when given their address. So, how can we employ this operator if we're not directly dealing with addresses? If you have an expression like &x, which returns the address of the x variable, applying the * operator to it (*&x) gives you the value of the variable stored at that address.

Note
Note

Essentially, *&x is the same as x.

Main.c

Main.c

1234567891011121314
#include <stdio.h> int main() { int x = 100; printf("Value of variable: %d\n", x); printf("Address of variable in RAM: %p\n", &x); // using reference operator `&` printf("Dereferencing address of variable: %d", *(&x)); // using dereference operator `*` return 0; }
Note
Note

Don't mix up the dereference operator (*x) with the multiplication operator (x*y).

Compito

Scorri per iniziare a programmare

  • Create an integer array of 5 elements and populate it.
  • Retrieve the address of the third element.
  • Increment the address of the third element and dereference the incremented address to print the value it points to.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 6. Capitolo 2
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

some-alt