Bài giảng Giới thiệu lập trình: Con trỏ - TS. Lê Nguyên Khôi

10 4 0
Bài giảng Giới thiệu lập trình: Con trỏ - TS. Lê Nguyên Khôi

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

Thông tin tài liệu

[r]

(1)

Giới Thiệu Lập Trình

Con Trỏ

(2)

Nội Dung

Con trỏ

Biến kiểu trỏ Quản lý vùng nhớ Toán tử trỏ

Mảng động

Khai báo & sử dụng

(3)

Giới Thiệu

Định nghĩa:

Địa vùng nhớ máy tính biến Vùng nhớ máy tính

Chia nhỏ thành byte

Đánh số thứ tự (hệ 16)

Địa sử dụng làm tên cho biến Con trỏ sử dụng

(4)

Biến Con Trỏ

Con trỏ “kiểu liệu” Kiểu địa vùng nhớ

Có thể dùng biến để lưu giá trị kiểu trỏ Không phải kiểu int, double

Địa vùng nhớ dùng lưu liệu kiểu

int, double

Ví dụ: double * p;

(5)

Biến Con Trỏ – Khai Báo

Khai báo trỏ giống biến kiểu liệu khác Thêm * vào trước tên biến

Ký hiệu * phải đặt trước biến trỏ Ví dụ: int *p1, *p2, v1, v2;

p1, p2 biến kiểu trỏ int v1, v2 biến kiểu int

(6)

Địa Chỉ & Số Nguyên

Con trỏ địa

Địa số nguyên

Con trỏ KHÔNG số nguyên

C++ ép trỏ phải sử dụng địa Không thể sử dụng số nguyên

(7)

Toán Tử &

Toán tử & trả địa biến

Dòng 4: đặt biến trỏ p tới biến v1 p địa v1

Dòng 5: đặt biến trỏ p tới biến v2 1 {

2 int *p, v1, v2; 3 v1 = 10; v2 = 20; 4 p = &v1;

5 p = &v2;

6 } 0x22ff32

(8)

Toán Tử *

Toán tử * truy xuất giá trị vùng nhớ

quản lý (lưu) trỏ

Dòng 4: in 10 (giá trị biến v1, mà p tới) Dòng 6: in 20 (giá trị biến v2, mà p tới)

1 {

2 int *p, v1, v2; 3 v1 = 10; p = &v1; 4 cout << *p;

5 v2 = 20; p = &v2; 6 cout << *p;

(9)

Toán Tử =

Gán giá trị

Dòng 3, 4: p tới v1, q tới v2

Dòng 5: sử dụng toán tử * truy cập vùng tới

nhớ trỏ quản lý

*p v1, *q v2, dòng 5 tương đương v1 = v2;

1 {

2 int v1 = 10, v2 = 20; 3 int *p = &v1;

4 int *p = &v2; 5 *p = *q;

6 } 0x22ff32

(10)

Toán Tử =

Gán trỏ

Dòng 3, 4: p tới v1, q tới v2 Dòng 5: gán p q

p không quản lý v1

p q quản lý v2

1 {

2 int v1 = 10, v2 = 20; 3 int *p = &v1;

4 int *p = &v2; 5 p = q;

6 } 0x22ff32

Ngày đăng: 09/03/2021, 06:33

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

Tài liệu liên quan