Chương 7 giới thiệu kiểu dữ liệu con trỏ. Thông qua chương này người học sẽ biết được cách khai báo và sử dụng biến con trỏ, biết được con trỏ và mảng, biết được con trỏ và tham số hình thức của hàm. . | LẬP TRÌNH CĂN BẢN Phần 2 - Chương 7 KIỂU CON TRỎ . Danh Nội dung chương này Giới thiệu kiểu dữ liệu con trỏ Khai báo và sử dụng biến con trỏ Con trỏ và mảng Con trỏ và tham số hình thức của hàm Giới thiệu kiểu dữ liệu con trỏ (pointer) (1) 1 con trỏ là 1 biến được dùng để chứa địa chỉ của ô nhớ trong bộ nhớ. Kích thước của biến con trỏ luôn là 2 byte. Ví dụ 1: float a=; float* ptr; //ptr is a pointer ptr=&a; FFF2 pointer ptr variable a FFF2 (address) Giới thiệu kiểu dữ liệu con trỏ (2) Ví dụ 2: In Linux Khai báo và sử dụng biến con trỏ Khai báo biến con trỏ Các thao tác trên con trỏ Khai báo biến con trỏ int a, b, *pa, *pb; //pa và pb sẽ chỉ đến biến int float f, *pf; //pa và pb sẽ chỉ đến biến float void *ptr; //ptr sẽ chỉ vào bất kỳ biến kiểu gì Cú pháp: *; Ý nghĩa: Khai báo một biến có tên là Tên con trỏ dùng để chứa địa chỉ của các biến có kiểu Kiểu. Các thao tác trên con trỏ Gán địa chỉ của biến cho biến con trỏ Nội dung của ô nhớ con trỏ chỉ tới Cấp phát vùng nhớ cho biến con trỏ Cấp phát lại vùng nhớ cho biến con trỏ Giải phóng vùng nhớ cho biến con trỏ Một số phép toán trên con trỏ Gán địa chỉ của biến cho biến con trỏ + Nội dung của ô nhớ con trỏ chỉ tới (1) Dùng & để lấy ra địa chỉ bộ nhớ (memory address) của 1 biến int a=6; int* c= &a; // &a là địa chỉ bộ nhớ của biến a Dùng * để truy cập (access) đến nội dung (content) của biến mà 1 con trỏ đang chỉ đến int a=6; int* c= &a; *c=7; /*Thay đổi nội dung của biến a bằng cách dùng địa chỉ của nó được chứa trong con trỏ c*/ tương đương với a=7; Gán địa chỉ của biến cho biến con trỏ + Nội dung của ô nhớ con trỏ chỉ tới (2) Gán địa chỉ của biến cho biến con trỏ + Nội dung của ô nhớ con trỏ chỉ tới (3) Lưu ý: => Error! Vì đã cho 1 con trỏ chỉ đến 1 biến khác kiểu với nó Cấp phát vùng nhớ cho biến con trỏ(1) Có 2 cách để dùng được biến con trỏ Cho nó chứa địa chỉ của 1 vùng nhớ đang tồn tại int a=6; int* c= &a; // &a là địa chỉ bộ nhớ của biến a | LẬP TRÌNH CĂN BẢN Phần 2 - Chương 7 KIỂU CON TRỎ . Danh Nội dung chương này Giới thiệu kiểu dữ liệu con trỏ Khai báo và sử dụng biến con trỏ Con trỏ và mảng Con trỏ và tham số hình thức của hàm Giới thiệu kiểu dữ liệu con trỏ (pointer) (1) 1 con trỏ là 1 biến được dùng để chứa địa chỉ của ô nhớ trong bộ nhớ. Kích thước của biến con trỏ luôn là 2 byte. Ví dụ 1: float a=; float* ptr; //ptr is a pointer ptr=&a; FFF2 pointer ptr variable a FFF2 (address) Giới thiệu kiểu dữ liệu con trỏ (2) Ví dụ 2: In Linux Khai báo và sử dụng biến con trỏ Khai báo biến con trỏ Các thao tác trên con trỏ Khai báo biến con trỏ int a, b, *pa, *pb; //pa và pb sẽ chỉ đến biến int float f, *pf; //pa và pb sẽ chỉ đến biến float void *ptr; //ptr sẽ chỉ vào bất kỳ biến kiểu gì Cú pháp: *; Ý nghĩa: Khai báo một biến có tên là Tên con trỏ dùng để chứa địa chỉ của các biến có kiểu Kiểu. Các thao tác trên con trỏ Gán địa chỉ của biến cho biến con trỏ Nội dung của ô