Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Con trỏ kép (Double Pointer) trong C


Con trỏ dùng lưu địa chỉ biến. Khi định nghĩa con trỏ tới con trỏ, con trỏ đầu lưu địa chỉ con trỏ thứ hai. Do đó gọi là con trỏ kép (double pointer).

Thuật toán

Bắt đầu
    Khai báo v kiểu nguyên
    Khởi tạo v = 76
    Khai báo con trỏ p1 kiểu nguyên
    Khai báo con trỏ kép p2 kiểu nguyên
    Khởi tạo p1 trỏ biến v
    Khởi tạo p2 trỏ biến p1
    In "Giá trị v"
    In giá trị biến v
    In "Giá trị v dùng con trỏ đơn"
    In giá trị con trỏ p1
    In "Giá trị v dùng con trỏ kép"
    In giá trị con trỏ kép p2
Kết thúc

Chương trình đơn giản hiểu con trỏ kép:

Ví dụ

int main() {
    int v = 76;
    int *p1;
    int **p2;
    p1 = &v;
    p2 = &p1;
    printf("Value of v = %d\n", v);
    printf("Value of v using single pointer = %d\n", *p1);
    printf("Value of v using double pointer = %d\n", **p2);
    return 0;
}

Kết quả

Value of v = 76
Value of v using single pointer = 76
Value of v using double pointer = 76