Vad är minnesadress i C++ och hur hittar man den?

Vad Ar Minnesadress I C Och Hur Hittar Man Den



I C++ är en adress till minnet platsen för en variabel i RAM-minnet där data lagras. RAM (Random Access Memory) är ett slags datorminne som kan läsas och modifieras i vilken sekvens som helst och som ofta används för att lagra driftsdata och maskinkoder. I våra program lagras varje variabel i RAM-minnet och tar upp plats i minnet. Dessa variabler har en specifik minnesplats, och var och en av dem har en adress som kan hämtas via et-tecken (&) operator . Denna operatör representerar minnesadressen för en variabel och är användbar för att komma åt och manipulera data som lagras på den platsen.

Den här artikeln ger en guide för att hitta en variabels minnesadress i C++.

Hur man bestämmer en variabels minnesadress i C++

I C++ finns det två metoder för att bestämma minnesadressen för en variabel:







Metod 1: Hitta variabelns minnesadress med 'adress till' och operatör

När vi måste bestämma minnesadressen för en variabel kan vi använda 'operatörens adress' (&) , som returnerar variabelns adress. För att visa adressen till en variabel, använd '&' tillsammans med variabelnamnet.



Låt oss använda ett exempelprogram för att visa detta:



#include

använder namnutrymme std ;

int huvud ( )

{

int nummer1 ;

flyta nummer2 ;

sträng str ;

cout << 'Ange ett heltalsvärde för att hitta dess minnesadress: ' ;

äter >> nummer1 ;

cout << 'Inmatat nummer är:' << nummer1 << endl ;

cout << 'Adress till' << nummer1 << ' är: ' <<& nummer1 << endl ;

cout << 'Ange ett decimalvärde för att hitta dess minnesadress: ' ;

äter >> nummer2 ;

cout << 'Inmatat nummer är:' << nummer2 << endl ;

cout << 'Adress till' << nummer2 << ' är :' <<& nummer2 << endl ;

cout << 'Ange en sträng för att hitta dess minnesadress: ' ;

äter >> str ;

för ( int i = 0 ; i < str. längd ( ) ; ++ i )

cout << 'Adress till' << str [ i ] << ' är :' << ( tomhet * ) & str [ i ] << endl ;

lämna tillbaka 0 ;

}

Våra variabeletiketter i programmet ovan är num1, num2 och str, med datatyperna int, float respektive string. Operatorn '&' används med variabelnamnet för att hitta dess minnesadress. Det bör noteras att utgången som tillhandahåller variabelns adress är ett slumpmässigt genererat nummer.





Metod 2: Hitta en variabels minnesadress med hjälp av en pekare

I C++ kan variabla adresser även erhållas med hjälp av pekare. En variabel som innehåller en annan variabels adress kallas en pekare. En pekare fungerar som vilken annan variabel som helst som måste specificeras innan den kan användas. En pekare definieras i C++ med '*' operator, ibland känd som asteriskoperator.



Låt oss titta på ett exempelprogram för att hitta minnesadress med hjälp av pekaren:

#include

#inkludera

använder namnutrymme std ;

int huvud ( ) {

int nummer1 ;

int * ptr_num1 = & nummer1 ;

flyta nummer2 ;

flyta * ptr_num2 = & nummer2 ;

sträng str ;

cout << 'Ange ett heltalsvärde för att hitta dess minnesadress: ' ;

äter >> nummer1 ;

cout << 'Inmatat nummer är:' << nummer1 << endl ;

cout << 'Adress till' << nummer1 << ' är: ' << ptr_num1 << endl ;

cout << 'Ange ett decimalvärde för att hitta dess minnesadress: ' ;

äter >> nummer2 ;

cout << 'Inmatat nummer är:' << nummer2 << endl ;

cout << 'Adress till' << nummer2 << ' är: ' << ptr_num2 << endl ;

cout << 'Ange en sträng för att hitta dess minnesadress: ' ;

äter >> str ;

för ( int i = 0 ; i < str. längd ( ) ; i ++ ) {

cout << 'Adress till' << str [ i ] << ' är: ' << ( tomhet * ) & str [ i ] << endl ;

}

lämna tillbaka 0 ;

}

Variabeletiketterna i det här programmet är num1, num2 och str, med datatyperna int, float respektive string. Variabeladressen bestäms med hjälp av pekaren tillsammans med variabelnamnet. Det bör noteras att utgången som tillhandahåller variabelns adress är ett slumpmässigt genererat nummer.

Slutsats

När vi deklarerar en variabel av vilken datatyp som helst i C++ tilldelas den en minnesplats av operativsystemet. Denna minnesplats är ett godtyckligt tal som inte kan vara negativt och är känt som variabelns adress. Att känna till minnesadressen för en variabel kan vara användbart i vissa programmeringsscenarier. I den här artikeln illustrerade vi två metoder, den adress till operatören (&) och pekare variabler , för att bestämma minnesadressen för en variabel i C++ tillsammans med enkla exempel.