C++
  • Home
  • Học lập trình
    • All
    • Học C++
    Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

    Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

    Lập trình Backend là gì? Những điều Backend Developer nên biết

    Lập trình Backend là gì? Những điều Backend Developer nên biết

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    hướng dẫn cài đặt visual studio code lập trình c++ chi tiết

    Cài Đặt Visual Studio Code Lập Trình C++ Chi Tiết Đơn Giản 2024

    học lập trình c++ thì làm được gì

    Học Lập Trình C++ Thì Làm Được Gì?

    Sự khác nhau giữa struct và class trong C++

    Sự Khác Nhau Giữa Struct Và Class Trong C++

    Sự khác nhau giữa tham chiếu và con trỏ c++

    Sự Khác Nhau Giữa Tham Chiếu Và Con Trỏ Trong C++

    • Học C++
  • Reviews
    Top 7 công cụ tạo website không cần code

    Top 7 Công Cụ Tạo Website Không Cần Code Miễn Phí

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

  • Phần mềm PC
  • App/Ứng dụng
  • Game
  • Hướng dẫn
    • PC
    • Mobile Tips
No Result
View All Result
  • Home
  • Học lập trình
    • All
    • Học C++
    Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

    Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

    Lập trình Backend là gì? Những điều Backend Developer nên biết

    Lập trình Backend là gì? Những điều Backend Developer nên biết

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    hướng dẫn cài đặt visual studio code lập trình c++ chi tiết

    Cài Đặt Visual Studio Code Lập Trình C++ Chi Tiết Đơn Giản 2024

    học lập trình c++ thì làm được gì

    Học Lập Trình C++ Thì Làm Được Gì?

    Sự khác nhau giữa struct và class trong C++

    Sự Khác Nhau Giữa Struct Và Class Trong C++

    Sự khác nhau giữa tham chiếu và con trỏ c++

    Sự Khác Nhau Giữa Tham Chiếu Và Con Trỏ Trong C++

    • Học C++
  • Reviews
    Top 7 công cụ tạo website không cần code

    Top 7 Công Cụ Tạo Website Không Cần Code Miễn Phí

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

  • Phần mềm PC
  • App/Ứng dụng
  • Game
  • Hướng dẫn
    • PC
    • Mobile Tips
No Result
View All Result
C++
No Result
View All Result
Home Học lập trình Học C++

Con trỏ đến con trỏ trong C++

admin by admin
July 6, 2023
in Học C++
0 0
0
0
SHARES
0
VIEWS
Share on FacebookShare on Twitter

Trong C++, con trỏ là một biến được sử dụng để lưu trữ địa chỉ bộ nhớ của các biến khác. Nó là một biến trỏ đến một kiểu dữ liệu (như int hoặc chuỗi) cùng loại và được tạo bằng toán tử *.

Cú pháp của con trỏ trong C++:

data_type_of_pointer *name_of_variable = & normal_variable;

Con trỏ tới Con trỏ hoặc Con trỏ kép trong C++ là gì?

Bây giờ, chúng ta đã biết rằng một con trỏ lưu trữ địa chỉ bộ nhớ của các biến khác. Vì vậy, khi chúng ta xác định một con trỏ đến một con trỏ, con trỏ đầu tiên được sử dụng để lưu trữ địa chỉ của các biến và con trỏ thứ hai lưu trữ địa chỉ của con trỏ đầu tiên. Vì lý do này, điều này được gọi là Con trỏ kép hoặc Con trỏ đến Con trỏ.

Sơ đồ dưới đây giải thích khái niệm Con trỏ kép:

Con trỏ kép

Sơ đồ trên cho thấy biểu diễn bộ nhớ của Con trỏ tới Con trỏ hoặc Con trỏ kép, chúng ta có thể dễ dàng hiểu rằng địa chỉ của biến (tức là Địa chỉ 1) được lưu trữ trong Con trỏ 1 và địa chỉ của Con trỏ 1 (tức là Địa chỉ 2) được lưu trữ trong Con trỏ 2. Điều này được gọi là Double Pointers hoặc Pointer to Pointer.

Làm thế nào để khai báo một con trỏ đến một con trỏ trong C ++?

Khai báo một con trỏ đến con trỏ tương tự như khai báo một con trỏ trong C++. Sự khác biệt là chúng ta phải sử dụng một toán tử * bổ sung trước tên của Con trỏ trong C ++.

Cú pháp của một con trỏ tới con trỏ (con trỏ kép) trong C++:

data_type_of_pointer **name_of_variable = & normal_pointer_variable;

Ví dụ:

int val = 169;

int *ptr = &val; Lưu trữ địa chỉ của val để con trỏ ptr.

int **double_ptr = &ptr; con trỏ đến một con trỏ được khai báo đang trỏ đến một số nguyên.

Sơ đồ dưới đây giải thích khái niệm Con trỏ kép:

Con trỏ kép hoạt động như thế nào?

Sơ đồ trên cho thấy biểu diễn bộ nhớ của một con trỏ đến một con trỏ. Con trỏ đầu tiên ptr1 lưu trữ địa chỉ của biến và con trỏ thứ hai ptr2 lưu trữ địa chỉ của con trỏ đầu tiên.

Ví dụ: Con trỏ kép hoạt động như thế nào?

Dưới đây là Chương trình C++ để triển khai Pointer to Pointer:

  • C++
// C++ program to implement
// pointer to pointer
#include <bits/stdc++.h>
using namespace std;
// Driver code
int main()
{
  int variable = 169;
  
  // Pointer to store the address
  // of variable
  int* pointer1;
  // double pointer to store the
  // address of pointer1
  int** pointer2;
  // Storing address of variable
  // in pointer1
  pointer1 = &variable;
  // Storing address of pointer1
  // in pointer2
  pointer2 = &pointer1;
  // Displaying the value of variable
  // with using both single and double
  // pointers.
  cout << "Value of variable :- " <<
           variable << "\n";
  cout << "Value of variable using single pointer :- " <<
           *pointer1 << "\n";
  cout << "Value of variable using double pointer :- " <<
           **pointer2 << "\n";
  return 0;
}

Ra

Value of variable :- 169
Value of variable using single pointer :- 169
Value of variable using double pointer :- 169

Kích thước của con trỏ đến con trỏ trong C++ sẽ là bao nhiêu?

Trong ngôn ngữ lập trình C++, con trỏ kép hoạt động tương tự như một con trỏ bình thường. Vì vậy, kích thước của biến của con trỏ kép và kích thước của biến con trỏ bình thường luôn bằng nhau.

Dưới đây là một chương trình C ++ để kiểm tra kích thước của một con trỏ kép:

  • C++
// C++ program to check the size
// of a pointer to a pointer.
#include <bits/stdc++.h>
using namespace std;
// Driver code
int main()
{
  int val = 169;
  int* ptr = &val;
  int** double_ptr = &ptr;
  cout << " Size of normal Pointer: " <<
            sizeof(ptr) << "\n";
  cout << " Size of double Pointer: " <<
            sizeof(double_ptr) << "\n";
  return 0;
}

Ra

 Size of normal Pointer: 8
 Size of double Pointer: 8

Ghi: Đầu ra của đoạn mã trên cũng phụ thuộc vào loại máy đang được sử dụng. Kích thước của một con trỏ không cố định trong ngôn ngữ lập trình C ++ và nó hoàn toàn phụ thuộc vào các yếu tố khác như kiến trúc CPU và hệ điều hành được sử dụng. Thông thường, đối với Hệ điều hành 64 bit, kích thước bộ nhớ 8 byte và đối với Hệ điều hành 32 bit, kích thước bộ nhớ 4 byte được gán.

Thời gian phức tạp: O(1).
Không gian phụ trợ: O(1).

Previous Post

Token trong C++

Next Post

Con trỏ void trong C++

admin

admin

Next Post

Con trỏ void trong C++

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

  • Trending
  • Comments
  • Latest
cách code hình trái tim bằng c++

Cách code hình trái tim giống với nhân vật Thủ Khoa Lý

December 7, 2023
hướng dẫn cài đặt visual studio code lập trình c++ chi tiết

Cài Đặt Visual Studio Code Lập Trình C++ Chi Tiết Đơn Giản 2024

October 3, 2023
Office 2019 full crack

Cách Crack Office 2019 Đơn Giản, Dễ Hiểu Thành Công 100%

September 19, 2023
Top 10 ứng dụng mua hàng Trung Quốc uy tín nhất hiện nay

Top 10 ứng dụng mua hàng Trung Quốc uy tín nhất hiện nay

January 18, 2025

Các lớp lưu trữ trong cpp

0

Câu lệnh if else trong cpp

0

Chức năng của switch trong cpp

0

Mảng đối tượng trong C++

0
Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

October 23, 2023
Top 7 website bán túi xách nữ chính hãng, uy tín nhất

Top 7 website bán túi xách nữ chính hãng, uy tín nhất

October 12, 2023
Hướng dẫn Cài Đặt Và Sử Dụng AutoCAD 2024 Full Crack 

Hướng dẫn Cài Đặt Và Sử Dụng AutoCAD 2024 Full Crack 

October 7, 2023
Hướng Dẫn Tải Và Sử Dụng GS Auto Clicker 3.1.2 Full Crack

Hướng Dẫn Tải Và Sử Dụng GS Auto Clicker 3.1.2 Full Crack

October 5, 2023

Recommended

Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

October 23, 2023
Top 7 website bán túi xách nữ chính hãng, uy tín nhất

Top 7 website bán túi xách nữ chính hãng, uy tín nhất

October 12, 2023
Hướng dẫn Cài Đặt Và Sử Dụng AutoCAD 2024 Full Crack 

Hướng dẫn Cài Đặt Và Sử Dụng AutoCAD 2024 Full Crack 

October 7, 2023
Hướng Dẫn Tải Và Sử Dụng GS Auto Clicker 3.1.2 Full Crack

Hướng Dẫn Tải Và Sử Dụng GS Auto Clicker 3.1.2 Full Crack

October 5, 2023
Hướng dẫn học C++

© 2023 Hướng dẫn học C++ - Website thuộc bản quyền của Hướng dẫn học C++.

Liên kết

  • Home
  • Học lập trình
  • Reviews
  • Phần mềm PC
  • App/Ứng dụng
  • Game
  • Hướng dẫn

Theo dõi chúng tôi

No Result
View All Result
  • Home
  • Học lập trình
    • Học C++
  • Reviews
  • Phần mềm PC
  • App/Ứng dụng
  • Game
  • Hướng dẫn
    • PC
    • Mobile Tips

© 2023 Hướng dẫn học C++ - Website thuộc bản quyền của Hướng dẫn học C++.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In