Bài giảng phương pháp lập trình chương 5 GV từ thị xuân hiền

37 196 0
Bài giảng phương pháp lập trình  chương 5   GV  từ thị xuân hiền

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

CHƯƠNG CON TRỎ (Pointers) Giới thiệu  Một trỏ biến chứa địa nhớ Địa vị trí đối tượng khác nhớ  Nếu biến chứa địa biến khác, biến thứ gọi trỏ đến biến thứ hai Giới thiệu Địa nhớ Biến nhớ Bộ nhớ Một biến cấp phát ô nhớ địa 1000 có giá trị địa (1003) biến khác Biến thứ gọi trỏ Khai báo biến trỏ  Cú pháp: type *pointerVariable; type: xác định kiểu liệu biến mà trỏ trỏ đến Ví dụ: int *a; a Toán tử trỏ (pointer operators)  Toán tử & toán tử ngôi, trả địa nhớ toán hạng ◦ Toán tử & dùng để gán địa biến cho biến trỏ Cú pháp: =& Toán tử trỏ (pointer operators)  Ví dụ: int a=25, x; int *y; x=a; y=&a; a 25 y y x Toán tử trỏ (pointer operators)  Toán tử * : toán tử trả giá trị địa trỏ trỏ đến Cú pháp: * Ví dụ: a=*p ; Các thao tác trỏ  Lệnh gán trỏ Có thể dùng phép gán để gán giá trị trỏ cho trỏ khác có kiểu Ví dụ: int x; int *p1, *p2; p1 = &x; p2 = p1; Sau đọan lệnh thực hiện, hai p1 p2 trỏ đến biến x Các thao tác trỏ  Phép toán số học trỏ ◦ Chỉ có phép toán sử dụng trỏ phép cộng trừ ◦ Khi cộng (+) trừ (-) trỏ với số nguyên N; kết trả trỏ Con trỏ đến vùng nhớ cách vùng nhớ trỏ số nguyên lần kích thước kiểu liệu Các thao tác trỏ Ví dụ : char *a; short *b; long *c; Các trỏ a, b, c trỏ tới ô nhớ 1000, 2000 3000 Cộng trỏ với số nguyên: a = a + 1;//con trỏ a dời byte b = b + 1;//con trỏ b dời byte c = c + 1; //con trỏ c dời byte Cấp phát nhớ động  Cú pháp: p = new type; delete p;  p biến trỏ nhận địa vùng nhớ cấp phát đủ lớn để chứa đối tượng có kiểu type Cấp phát nhớ động  Ví dụ: #include #include int main() { int *p; p = new int; // allocate space for an int *p = 100; cout [...]... int a = 20, b = 15, *pa, *pb, temp; pa = &a; // con trỏ pa chứa địa chỉ của a pb = &b; // con trỏ pb chứa địa chỉ của b temp = *pa; // kết quả xuất ra *pa = *pb; *pb = temp; màn hình cout ... Cấp phát động phương tiện nhờ chương trình dành thêm nhớ thực thi, giải phóng nhớ không cần thiết C/C++ hổ trợ hai hệ thống cấp phát động: hệ thống định nghĩa C định nghĩa C++ 5 Cấp phát nhớ... tử & dùng để gán địa biến cho biến trỏ Cú pháp: =& Toán tử trỏ (pointer operators)  Ví dụ: int a= 25, x; int *y; x=a; y=&a; a 25 y y x Toán tử trỏ (pointer operators) ... char cho phù hợp với biến trỏ p 5 Cấp phát nhớ động  Ví dụ: int *p; p = (int *) malloc (50 *sizeof(int)); Toán tử sizeof để xác định kích thước kiểu liệu int 5 Cấp phát nhớ động  Kích thước

Ngày đăng: 03/12/2015, 20:52

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan