PASCAL/Khai báo/Khai báo Địa chỉ
Bản ghi là kiểu có dạng liệt kê, ví dụ bạn cần những thông tin của một người nào đó thì bạn sẽ cần một danh sach có nội dung như sau: Tên, Tuổi, Giới tính,...
Khai báo Địa chỉ
[edit]Cú pháp
[edit]type
<tên bản ghi> = RECORD
<tên trường 1> : <kiểu dữ liệu>;
<tên trường 2> : <kiểu dữ liệu>;
...
end;
var <tên biến> : <tên bản ghi>;
Ví dụ
[edit]type
Danhsach = record
ten : string[25];
tuoi : byte;
gioi_tinh : boolean;
end;
vidu = record {có thể có nhiều bản ghi}
a : char;
b : string[1];
end;
var nguoia, nguoib, nguoic : Danhsach;
lul : vidu;
Truy xuất
[edit]Cú pháp: <tên biến>.<tên trường>
Ví dụ: nguoib.tuoi
Ứng dụng
[edit]Thay vì các bạn sẽ tạo các biến như tennguoia, tennguoib, tennguoic, tuoinguoia,... thì bây giờ ta có thể áp dụng kiểu bản ghi, đỡ tốn thời gian và sức lực.
Khai báo khác
[edit]Việc sử dụng type
để tạo biến hằng là chuyện có thể làm được, chỉ việc thay const
thành type
(khai báo hằng gián tiếp). Qua đó và kiểu dữ liệu mới ta có thể tạo ra biến hoặc giá trị của kiểu dữ liệu được xác định.
Cú pháp
[edit]type
<tên biến> = <kiểu dữ liệu>; {khai báo biến gián tiếp}
<tên hằng> = <giá trị>; {khái báo hằng gián tiếp}
<biến có giá trị của kiểu dữ liệu được xác định>
Ví dụ
[edit]type
heeloooo = integer; {khai báo biến gián tiếp}
Max = 35; {khai báo hằng gián tiếp}
DiemTBlop9A10 : array[1..Max] of real;
Trong đó "Max" chính là kiểu dữ liệu có giá trị được xác định.
Biến con trỏ
[edit]Biến con trỏ là biến chuyên dùng để chứa địa chỉ giúp ta truy cập đến địa chỉ có thể thay đổi được kích thước và địa chỉ vùng nhớ được cấp phát trong quá trình chạy chương trình.
Cú pháp
[edit]type
<biến con trỏ> = ^<kiểu dữ liệu>;
var <tên biến> : <biến con trỏ>
Ví dụ:
type
hello = ^byte;
var int : hello; {khai báo gián tiếp}
Ngoài ra nếu không quan tâm đến kiểu dữ liệu nào, có thể khai báo với cú pháp như sau:
var <tên biến> : pointer;
Truy xuất
[edit]<tên biến đã có địa chỉ>^
Ví dụ: hello^
Ứng dụng
[edit]Khi làm việc chung với số lượng dữ liệu lớn, ta thường làm với mảng nhưng nếu có số lượng phần tử lớn thì sẽ tốn dữ liệu, vả lại còn phải biết trước số lượng giới hạn. Qua đó mà Pascal đã có thêm biến con trỏ để giải quyết được vấn đề này.
Kiểu dữ liệu mới
[edit]Ví dụ bạn chỉ cần một kiểu dữ liệu chỉ gồm những số âm trong đó có số từ -100 đến 0 thì phải làm sao sẽ đỡ tốn dữ liệu ? Tự tạo kiểu dữ liệu đó chính là cách hay nhất.
- Cú pháp
type <tên kiểu dữ liệu mới> = <giá trị đầu>..<giá trị cuối>;
- Ví dụ
type am = -100..0;
Ứng dụng
[edit]Kiểu dữ liệu có giá trị được xác định: giúp thay đổi số liệu dễ dàng và thường ứng dụng cho mảng.
Hằng: ta có thể tạo hằng thẳng trên đây mà không dùng lệnh const
.
Biến: có thể sử dụng được biến có kiểu dữ liệu mới hay được xác định.