Che cos'è l'indirizzo di memoria in C++ e come trovarlo?

Che Cos E L Indirizzo Di Memoria In C E Come Trovarlo



In C++, un indirizzo di memoria è la posizione di una variabile nella RAM in cui sono archiviati i dati. La RAM (Random Access Memory) è una sorta di memoria del computer che può essere letta e modificata in qualsiasi sequenza ed è frequentemente utilizzata per memorizzare dati operativi e codici macchina. Nei nostri programmi ogni variabile è memorizzata nella RAM e occupa spazio in memoria. Queste variabili hanno una posizione di memoria specifica e ciascuna di esse ha un indirizzo che può essere recuperato tramite il file operatore commerciale (&). . Questo operatore rappresenta l'indirizzo di memoria di una variabile ed è utile per accedere e manipolare i dati memorizzati in quella posizione.

Questo articolo fornisce una guida per trovare l'indirizzo di memoria di una variabile in C++.

Come determinare l'indirizzo di memoria di una variabile in C++

In C++, ci sono due metodi per determinare l'indirizzo di memoria di una variabile:







Metodo 1: trovare l'indirizzo di memoria della variabile utilizzando 'indirizzo di' e operatore

Quando ci viene richiesto di determinare l'indirizzo di memoria di una variabile, possiamo utilizzare il 'indirizzo dell'operatore' (&) , che restituisce l'indirizzo della variabile. Per visualizzare l'indirizzo di una variabile, utilizzare '&' insieme al nome della variabile.



Usiamo un programma di esempio per dimostrarlo:



#include

utilizzando lo spazio dei nomi std ;

int principale ( )

{

int num1 ;

galleggiante num2 ;

stringa str ;

cout << 'Inserisci un valore intero per trovare il suo indirizzo di memoria: ' ;

mangiare >> num1 ;

cout << 'Il numero inserito è: ' << num1 << finel ;

cout << 'Indirizzo di' << num1 << ' È: ' <<& num1 << finel ;

cout << 'Inserisci un valore decimale per trovare l'indirizzo di memoria: ' ;

mangiare >> num2 ;

cout << 'Il numero inserito è:' << num2 << finel ;

cout << 'Indirizzo di' << num2 << ' È :' <<& num2 << finel ;

cout << 'Inserisci una stringa per trovare il suo indirizzo di memoria: ' ;

mangiare >> str ;

per ( int io = 0 ; io < str. lunghezza ( ) ; ++ io )

cout << 'Indirizzo di' << str [ io ] << ' È :' << ( vuoto * ) & str [ io ] << finel ;

ritorno 0 ;

}

Le nostre etichette di variabili nel programma precedente sono num1, num2 e str, rispettivamente con i tipi di dati int, float e string. L'operatore '&' viene utilizzato con il nome della variabile per trovare il suo indirizzo di memoria. Va notato che l'output che fornisce l'indirizzo della variabile è un numero generato casualmente.





Metodo 2: trovare l'indirizzo di memoria di una variabile utilizzando un puntatore

In C++, gli indirizzi delle variabili possono anche essere ottenuti utilizzando i puntatori. Una variabile che contiene l'indirizzo di un'altra variabile viene chiamata puntatore. Un puntatore funziona come qualsiasi altra variabile che deve essere specificata prima di poter essere utilizzata. Un puntatore è definito in C++ con l'estensione '*' operatore, noto anche come operatore asterisco.



Diamo un'occhiata a un programma di esempio per trovare l'indirizzo di memoria usando il puntatore:

#include

#include

utilizzando lo spazio dei nomi std ;

int principale ( ) {

int num1 ;

int * ptr_num1 = & num1 ;

galleggiante num2 ;

galleggiante * ptr_num2 = & num2 ;

stringa str ;

cout << 'Inserisci un valore intero per trovare il suo indirizzo di memoria: ' ;

mangiare >> num1 ;

cout << 'Il numero inserito è: ' << num1 << finel ;

cout << 'Indirizzo di' << num1 << ' È: ' << ptr_num1 << finel ;

cout << 'Inserisci un valore decimale per trovare l'indirizzo di memoria: ' ;

mangiare >> num2 ;

cout << 'Il numero inserito è: ' << num2 << finel ;

cout << 'Indirizzo di' << num2 << ' È: ' << ptr_num2 << finel ;

cout << 'Inserisci una stringa per trovare il suo indirizzo di memoria: ' ;

mangiare >> str ;

per ( int io = 0 ; io < str. lunghezza ( ) ; io ++ ) {

cout << 'Indirizzo di' << str [ io ] << ' È: ' << ( vuoto * ) & str [ io ] << finel ;

}

ritorno 0 ;

}

Le etichette delle variabili in questo programma sono num1, num2 e str, rispettivamente con i tipi di dati int, float e string. L'indirizzo della variabile viene determinato utilizzando il puntatore insieme al nome della variabile. Va notato che l'output che fornisce l'indirizzo della variabile è un numero generato casualmente.

Conclusione

Quando dichiariamo una variabile di qualsiasi tipo di dati in C++, le viene assegnata una posizione di memoria dal sistema operativo. Questa posizione di memoria è un numero arbitrario che non può essere negativo ed è noto come indirizzo della variabile. Conoscere l'indirizzo di memoria di una variabile può essere utile in alcuni scenari di programmazione. In questo articolo, abbiamo illustrato due metodi, il indirizzo dell'operatore(&) E variabili puntatore , per determinare l'indirizzo di memoria di una variabile in C++ insieme a semplici esempi.