Co to jest adres pamięci w C++ i jak go znaleźć?

Co To Jest Adres Pamieci W C I Jak Go Znalezc



W języku C++ adres pamięci to lokalizacja zmiennej w pamięci RAM, w której przechowywane są dane. RAM (Random Access Memory) jest rodzajem pamięci komputera, którą można odczytywać i modyfikować w dowolnej kolejności i jest często wykorzystywana do przechowywania danych eksploatacyjnych i kodów maszynowych. W naszych programach każda zmienna jest przechowywana w pamięci RAM i zajmuje miejsce w pamięci. Zmienne te mają określone miejsce w pamięci, a każda z nich ma adres, który można pobrać za pomocą operatora ampersand (&). . Ten operator reprezentuje adres pamięci zmiennej i jest przydatny do uzyskiwania dostępu do danych przechowywanych w tej lokalizacji i manipulowania nimi.

Ten artykuł zawiera przewodnik dotyczący znajdowania adresu pamięci zmiennej w języku C++.

Jak określić adres pamięci zmiennej w C++

W języku C++ istnieją dwie metody określania adresu pamięci zmiennej:







Metoda 1: Znajdź adres pamięci zmiennej za pomocą „adresu” & operatora

Kiedy jesteśmy zobowiązani do określenia adresu pamięci zmiennej, możemy użyć metody „adres operatora” (&) , która zwraca adres zmiennej. Aby wyświetlić adres zmiennej, użyj „&” wraz z nazwą zmiennej.



Użyjmy przykładowego programu, aby to zademonstrować:



#include

przy użyciu przestrzeni nazw std ;

int główny ( )

{

int numer1 ;

platforma liczba2 ;

ciąg ul ;

cout << 'Wprowadź wartość całkowitą, aby znaleźć adres pamięci: ' ;

jedzenie >> numer1 ;

cout << 'Wprowadzony numer to: ' << numer1 << koniec ;

cout << 'Adres ' << numer1 << ' Jest: ' <<& numer1 << koniec ;

cout << 'Wprowadź wartość dziesiętną, aby znaleźć adres pamięci: ' ;

jedzenie >> liczba2 ;

cout << 'Wprowadzony numer to:' << liczba2 << koniec ;

cout << 'Adres ' << liczba2 << ' Jest :' <<& liczba2 << koniec ;

cout << „Wprowadź ciąg, aby znaleźć adres pamięci:” ;

jedzenie >> ul ;

Do ( int I = 0 ; I < ul. długość ( ) ; ++ I )

cout << 'Adres ' << ul [ I ] << ' Jest :' << ( próżnia * ) & ul [ I ] << koniec ;

powrót 0 ;

}

Nasze etykiety zmiennych w powyższym programie to num1, num2 i str, z typami danych odpowiednio int, float i string. Operator „&” jest używany z nazwą zmiennej, aby znaleźć jej adres w pamięci. Należy zauważyć, że wyjściem, które podaje adres zmiennej, jest losowo generowana liczba.





Metoda 2: Znajdź adres pamięci zmiennej za pomocą wskaźnika

W C++ adresy zmiennych można również uzyskać za pomocą wskaźników. Zmienna przechowująca adres innej zmiennej jest nazywana wskaźnikiem. Wskaźnik służy jak każda inna zmienna, którą należy określić przed użyciem. Wskaźnik jest zdefiniowany w C++ za pomocą '*' operator, czasami nazywany operatorem gwiazdki.



Spójrzmy na przykładowy program do znajdowania adresu pamięci za pomocą wskaźnika:

#include

#włącz <łańcuch>

przy użyciu przestrzeni nazw std ;

int główny ( ) {

int numer1 ;

int * numer_pkt1 = & numer1 ;

platforma liczba2 ;

platforma * numer_pkt2 = & liczba2 ;

ciąg ul ;

cout << 'Wprowadź wartość całkowitą, aby znaleźć adres pamięci: ' ;

jedzenie >> numer1 ;

cout << 'Wprowadzony numer to: ' << numer1 << koniec ;

cout << 'Adres ' << numer1 << ' Jest: ' << numer_pkt1 << koniec ;

cout << 'Wprowadź wartość dziesiętną, aby znaleźć adres pamięci: ' ;

jedzenie >> liczba2 ;

cout << 'Wprowadzony numer to: ' << liczba2 << koniec ;

cout << 'Adres ' << liczba2 << ' Jest: ' << numer_pkt2 << koniec ;

cout << „Wprowadź ciąg, aby znaleźć adres pamięci:” ;

jedzenie >> ul ;

Do ( int I = 0 ; I < ul. długość ( ) ; I ++ ) {

cout << 'Adres ' << ul [ I ] << ' Jest: ' << ( próżnia * ) & ul [ I ] << koniec ;

}

powrót 0 ;

}

Etykiety zmiennych w tym programie to num1, num2 i str, z typami danych odpowiednio int, float i string. Adres zmiennej określany jest za pomocą wskaźnika wraz z nazwą zmiennej. Należy zauważyć, że wyjściem, które podaje adres zmiennej, jest losowo generowana liczba.

Wniosek

Kiedy deklarujemy zmienną dowolnego typu danych w C++, system operacyjny przypisuje jej miejsce w pamięci. Ta lokalizacja pamięci jest dowolną liczbą, która nie może być ujemna i jest znana jako adres zmiennej. Znajomość adresu pamięci zmiennej może być przydatna w niektórych scenariuszach programowania. W tym artykule zilustrowaliśmy dwie metody, tj adres operatora(&) I zmienne wskaźnikowe , aby określić adres pamięci zmiennej w C++ wraz z prostymi przykładami.