Tin họC ĐẠi cưƠNG


Chương 9 KIỂU CON TRỎ VÀ BIẾN ĐỘNG



tải về 228.5 Kb.
trang16/19
Chuyển đổi dữ liệu28.05.2024
Kích228.5 Kb.
#57772
1   ...   11   12   13   14   15   16   17   18   19
On tap Pascal nang cao

Chương 9
KIỂU CON TRỎ VÀ BIẾN ĐỘNG


10.1 KHÁI NIỆM

  • Biến tĩnh và biến động

Biến tĩnh được cấp phát vùng nhớ trong DataSegment (64KB - IMB PC), tồn tại cùng với khối chương trình mà nó được khai báo.

Biến động được lưu trữ trong vùng nhớ Heap, khi cần có thể tạo ra để chứa dữ liệu, khi không cần có thể xoá.

Biến động không có tên và do con trỏ quản lý.




  • Biến con trỏ

Biến con trỏ (Pointer variable): biến đặc biệt có kích thước 2 bytes, không dùng để chứa dữ liệu mà chứa địa chỉ của biến động.




Biến con trỏ có 2 loại: định kiểu và không định kiểu.

Biến con trỏ không định kiểu sẽ có kiểu như biến con trỏ định kiểu mà nó được gán.




NIL: giá trị hằng đặc biệt của biến con trỏ để báo con trỏ không trỏ vào đâu.

Có thể gán Nil cho bất kì biến con trỏ nào.


10.2 KHAI BÁO

  • Khai báo kiểu con trỏ

TYPE

KieuCT = ^KieuDL;

trong đó KieuCT - từ tự đặt xác định kiểu con trỏ, KieuDL - kiểu dữ liệu của biến động do biến con trỏ quản lý (Real, String, Array, Record, ...).





  • Khai báo biến con trỏ

Cách 1: VAR BienCT : KieuCT;

Cách 2: VAR BienCT : ^KieuDL;


VD 10.1 (khai báo kiểu, biến con trỏ)

TYPE {Định nghĩa các kiểu con trỏ}

RealPtr = ^Real;

svPtr = ^HosoSV;

HosoSV= RECORD

hoten: String[25];

lop: String[5];

dtb: Real;

END;




VAR {Khai báo các biến con trỏ}

p: RealPtr; {biến con trỏ chứa đ/c biến động kiểu Real}

sv: svPtr; { ~ kiểu HosoSV}

p2: ^Char; { ~ kiểu Char}

p0: Pointer; {biến con trỏ không định kiểu}





tải về 228.5 Kb.

Chia sẻ với bạn bè của bạn:
1   ...   11   12   13   14   15   16   17   18   19




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương