Địa chỉ bộ nhớ trong C++ là gì và cách tìm nó?

Dia Chi Bo Nho Trong C La Gi Va Cach Tim No



Trong C++, địa chỉ của bộ nhớ là vị trí của một biến trong RAM nơi dữ liệu được lưu trữ. RAM (Bộ nhớ truy cập ngẫu nhiên) là một loại bộ nhớ máy tính có thể được đọc cũng như sửa đổi theo bất kỳ trình tự nào và thường được sử dụng để lưu trữ dữ liệu vận hành và mã máy. Trong các chương trình của chúng tôi, mỗi biến được lưu trữ trong RAM và chiếm dung lượng trong bộ nhớ. Các biến này có một vị trí bộ nhớ cụ thể và mỗi biến có một địa chỉ có thể được truy xuất thông qua toán tử dấu và (&) . Toán tử này đại diện cho địa chỉ bộ nhớ của một biến và hữu ích cho việc truy cập và thao tác dữ liệu được lưu trữ tại vị trí đó.

Bài viết này cung cấp hướng dẫn tìm địa chỉ bộ nhớ của biến trong C++.

Cách xác định địa chỉ bộ nhớ của biến trong C++

Trong C++, có hai phương pháp để xác định địa chỉ bộ nhớ của một biến:







Phương pháp 1: Tìm địa chỉ bộ nhớ của biến Sử dụng 'địa chỉ của' & Toán tử

Khi chúng ta được yêu cầu xác định địa chỉ bộ nhớ của một biến, chúng ta có thể sử dụng “địa chỉ của nhà điều hành” (&) , trả về địa chỉ của biến. Để hiển thị địa chỉ của một biến, sử dụng '&' cùng với tên biến.



Hãy để chúng tôi sử dụng một chương trình ví dụ để chứng minh điều này:



#include

sử dụng không gian tên std ;

int chủ yếu ( )

{

int số1 ;

trôi nổi số2 ;

chuỗi str ;

cout << 'Vui lòng nhập một giá trị số nguyên để tìm địa chỉ bộ nhớ của nó:' ;

Ăn >> số1 ;

cout << 'Số đã nhập là:' << số1 << kết thúc ;

cout << 'Địa chỉ của ' << số1 << ' là: ' <<& số1 << kết thúc ;

cout << 'Vui lòng nhập giá trị thập phân để tìm địa chỉ bộ nhớ của nó:' ;

Ăn >> số2 ;

cout << 'Số đã nhập là:' << số2 << kết thúc ;

cout << 'Địa chỉ của ' << số2 << ' là :' <<& số2 << kết thúc ;

cout << 'Vui lòng nhập một chuỗi để tìm địa chỉ bộ nhớ của nó: ' ;

Ăn >> str ;

( int Tôi = 0 ; Tôi < str. chiều dài ( ) ; ++ Tôi )

cout << 'Địa chỉ của ' << str [ Tôi ] << ' là :' << ( khoảng trống * ) & str [ Tôi ] << kết thúc ;

trở lại 0 ;

}

Các nhãn biến của chúng ta trong chương trình trên là num1, num2 và str với kiểu dữ liệu lần lượt là int, float và string. Toán tử '&' được sử dụng với tên biến để tìm địa chỉ bộ nhớ của nó. Cần lưu ý rằng đầu ra cung cấp địa chỉ của biến là một số được tạo ngẫu nhiên.





Phương pháp 2: Tìm địa chỉ bộ nhớ của biến bằng con trỏ

Trong C++, địa chỉ biến cũng có thể được lấy bằng cách sử dụng con trỏ. Một biến chứa địa chỉ của một biến khác được gọi là một con trỏ. Một con trỏ phục vụ giống như bất kỳ biến nào khác phải được chỉ định trước khi nó có thể được sử dụng. Một con trỏ được định nghĩa trong C++ với '*' toán tử, đôi khi được gọi là toán tử dấu hoa thị.



Hãy xem một chương trình ví dụ để tìm địa chỉ bộ nhớ bằng con trỏ:

#include

#bao gồm

sử dụng không gian tên std ;

int chủ yếu ( ) {

int số1 ;

int * ptr_num1 = & số1 ;

trôi nổi số2 ;

trôi nổi * ptr_num2 = & số2 ;

chuỗi str ;

cout << 'Vui lòng nhập một giá trị số nguyên để tìm địa chỉ bộ nhớ của nó:' ;

Ăn >> số1 ;

cout << 'Số đã nhập là:' << số1 << kết thúc ;

cout << 'Địa chỉ của ' << số1 << ' là: ' << ptr_num1 << kết thúc ;

cout << 'Vui lòng nhập giá trị thập phân để tìm địa chỉ bộ nhớ của nó:' ;

Ăn >> số2 ;

cout << 'Số đã nhập là:' << số2 << kết thúc ;

cout << 'Địa chỉ của ' << số2 << ' là: ' << ptr_num2 << kết thúc ;

cout << 'Vui lòng nhập một chuỗi để tìm địa chỉ bộ nhớ của nó: ' ;

Ăn >> str ;

( int Tôi = 0 ; Tôi < str. chiều dài ( ) ; Tôi ++ ) {

cout << 'Địa chỉ của ' << str [ Tôi ] << ' là: ' << ( khoảng trống * ) & str [ Tôi ] << kết thúc ;

}

trở lại 0 ;

}

Các nhãn biến trong chương trình này là num1, num2 và str, với các kiểu dữ liệu tương ứng là int, float và string. Địa chỉ biến được xác định bằng cách sử dụng con trỏ cùng với tên biến. Cần lưu ý rằng đầu ra cung cấp địa chỉ của biến là một số được tạo ngẫu nhiên.

Phần kết luận

Khi chúng ta khai báo một biến thuộc bất kỳ kiểu dữ liệu nào trong C++, nó sẽ được hệ điều hành gán một vị trí bộ nhớ. Vị trí bộ nhớ này là một số tùy ý không thể âm và được gọi là địa chỉ của biến. Biết địa chỉ bộ nhớ của một biến có thể hữu ích trong các tình huống lập trình nhất định. Trong bài viết này, chúng tôi minh họa hai phương pháp, phương pháp địa chỉ của toán tử (&) biến con trỏ , để xác định địa chỉ bộ nhớ của một biến trong C++ cùng với các ví dụ đơn giản.