Bộ nhớ máy tính Bộ nhớ RAM chứa rất nhiều ô nhớ, mỗi ô nhớ có kích thước 1 byte. RAM dùng để chứa một phần hệ điều hành, các lệnh chương trình, các dữ liệu… Mỗi ô nhớ có địa chỉ duy nhất và địa chỉ này được đánh số từ 0 trở đi.
Trường Đại học Khoa học Tự nhiên Khoa Công nghệ thơng tin Bộ mơn Tin học sở NHẬP MƠN LẬP TRÌNH Đặng Bình Phương dbphuong@fit.hcmus.edu.vn DỮ LIỆU KIỂU CON TRỎ (CƠ BẢN) && VC VC BB BB Nội dung Khái niệm cách sử dụng Các cách truyền đối số cho hàm Con trỏ mảng chiều Con trỏ cấu trúc Dữ liệu kiểu trỏ (cơ bản) && VC VC BB BB Kiến trúc máy tính Bộ nhớ máy tính Bộ nhớ RAM chứa nhiều nhớ, nhớ có kích thước byte RAM dùng để chứa phần hệ điều hành, lệnh chương trình, liệu… Mỗi nhớ có địa địa đánh số từ trở Ví dụ • RAM 512MB đánh địa từ đến 229 – • RAM 2GB đánh địa từ đến 231 – Dữ liệu kiểu trỏ (cơ bản) && VC VC BB BB Khai báo biến C Quy trình xử lý trình biên dịch Dành riêng vùng nhớ với địa để lưu biến Liên kết địa nhớ với tên biến Khi gọi tên biến, truy xuất tự động đến nhớ liên kết với tên biến Ví dụ: int a = 0x1234; // Giả sử địa 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 0x0B … 34 12 00 00 a … Dữ liệu kiểu trỏ (cơ bản) && VC VC BB BB Khái niệm trỏ Khái niệm Địa biến số Ta tạo biến khác để lưu địa biến Con trỏ 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 … 34 12 00 00 a 0B 00 00 00 pa … Dữ liệu kiểu trỏ (cơ bản) && VC VC BB BB Khai báo trỏ Khai báo Giống biến khác, biến trỏ muốn sử dụng cần phải khai báo *; Ví dụ char *ch1, *ch2; int *p1, ch1 vàp2; ch2 biến trỏ, trỏ tới vùng nhớ kiểu char (1 byte) p1 biến trỏ, trỏ tới vùng nhớ kiểu int (4 bytes) p2 biến kiểu int bình thường Dữ liệu kiểu trỏ (cơ bản) && VC VC BB BB Khai báo trỏ Sử dụng từ khóa typedef typedef *; ; Ví dụ typedef int *pint; int *p1; pint p2, p3; Lưu ý khai báo kiểu liệu Giảm bối rối tiếp xúc với trỏ Nhưng dễ nhầm lẫn với biến thường Dữ liệu kiểu trỏ (cơ bản) && VC VC BB BB Con trỏ NULL Khái niệm Con trỏ NULL trỏ không trỏ đâu Khác với trỏ chưa khởi tạo int n; int *p1 = &n; int *p2; // unreferenced local variable int *p3 = NULL; NULL Dữ liệu kiểu trỏ (cơ bản) && VC VC BB BB Khởi tạo kiểu trỏ Khởi tạo Khi khai báo, biến trỏ đặt địa (khơng biết trước) chứa giá trị không xác định trỏ đến vùng nhớ trước Đặt địa biến vào trỏ (toán tử &)biến trỏ> = &; = < >= < = &;