9/26/2016<br />
<br />
Kỹ thuật lập trình<br />
<br />
Tuần 6 - Các cấu trúc dữ liệu cơ<br />
bản (tiếp)<br />
Giáo viên: Hà Đại Dương<br />
duonghd@mta.edu.vn<br />
<br />
9/26/2016<br />
<br />
1<br />
<br />
Nội dung<br />
• Mảng (array) - Bài trước<br />
• Con trỏ (pointer)<br />
• Xâu ký tự (string)<br />
<br />
9/26/2016<br />
<br />
2<br />
<br />
1<br />
<br />
9/26/2016<br />
<br />
Con trỏ (Pointer)<br />
<br />
9/26/2016<br />
<br />
3<br />
<br />
Con trỏ<br />
• Cho phép quản lý vùng nhớ: Ghi, đọc dữ liệu<br />
từ vùng nhớ này (như biến)<br />
• Biến thông thường<br />
int a; float b; char c<br />
a,b,c: Biến (thường), lưu giá trị<br />
<br />
• Biến con trỏ (con trỏ): lưu địa chỉ của vùng<br />
nhớ.<br />
<br />
9/26/2016<br />
<br />
4<br />
<br />
2<br />
<br />
9/26/2016<br />
<br />
Khai báo<br />
• Cú pháp<br />
Kiểu * Tên_Biến;<br />
• Ví dụ:<br />
int *pa;<br />
float *pb;<br />
char *pc;<br />
<br />
9/26/2016<br />
<br />
5<br />
<br />
Địa chỉ và giá trị<br />
Địa chỉ<br />
<br />
Giá trị<br />
<br />
FF01<br />
<br />
678<br />
<br />
FF02<br />
<br />
34.1<br />
<br />
…<br />
<br />
• Ô nhớ: Được xác định bằng 1<br />
địa chỉ và có 1 giá trị nào đó.<br />
• Ví dụ:<br />
<br />
…<br />
<br />
– Tại địa chỉ: FF01 có giá trị là 678<br />
– Tại địac chỉ FF02 có giá trị là 34.1<br />
<br />
9/26/2016<br />
<br />
6<br />
<br />
3<br />
<br />
9/26/2016<br />
<br />
Địa chỉ và giá trị …<br />
int a; float b; char c<br />
Quan tên của nó -> Biết giá trị<br />
<br />
Địa chỉ<br />
<br />
Giá trị<br />
<br />
FF01<br />
<br />
678<br />
<br />
FF02<br />
<br />
34.1<br />
<br />
…<br />
<br />
• Biến thường<br />
<br />
…<br />
<br />
• Con trỏ:<br />
int *pa; float *pb; char *pc;<br />
Qua tên của nó -> Biết địa chỉ ô nhớ<br />
<br />
9/26/2016<br />
<br />
7<br />
<br />
Địa chỉ và giá trị<br />
• Toán tử &: Tác động đến địa chỉ của 1 biến<br />
(thường)<br />
– Cú pháp: &Tên_Biến_Thường<br />
– Ví dụ: &a, &b, &c<br />
<br />
• Toán tử *: Tác động đến giá trị ô nhớ tại địa<br />
chỉ biến con trỏ<br />
– Cú pháp: *Tên_Biến_Con_trỏ<br />
– Ví dụ: *pa, *pb, *pc<br />
9/26/2016<br />
<br />
8<br />
<br />
4<br />
<br />
9/26/2016<br />
<br />
Ví dụ 1<br />
<br />
9/26/2016<br />
<br />
9<br />
<br />
Ví dụ 1…<br />
<br />
9/26/2016<br />
<br />
10<br />
<br />
5<br />
<br />