26/05/2018, 16:41

Kiểu bản ghi trong Pascal

Các mảng trong Pascal cho phép định nghĩa các kiểu của biến có thể chứa nhiều mục dữ liệu cùng loại, nhưng kiểu bản ghi trong Pascal là kiểu dữ liệu do người ...

Các mảng trong Pascal cho phép định nghĩa các kiểu của biến có thể chứa nhiều mục dữ liệu cùng loại, nhưng kiểu bản ghi trong Pascal là kiểu dữ liệu do người dùng định nghĩa có sẵn trong Pascal, cho phép bạn kết hợp dữ liệu các loại khác nhau.

kieu ban ghi trong pascal

Bản ghi trong Pascal bao gồm nhiều trường khác nhau. Giả sử nếu muốn theo dõi các đầu sách có trong thư viện, bạn có thể theo dõi các thuộc tính dưới đây của mỗi đầu sách, bao gồm:

- Tên sách

- Tác giả của sách

- Phân loại sách

- ID của sách

Định nghĩa bản ghi trong Pascal

Để định nghĩa bản ghi trong Pascal, bạn có thể sử dụng khai báo kiểu. được định nghĩa như dưới đây:

kieu ban ghi trong pascal 2

Dưới đây là cách khai báo kiểu bản ghi Book:

kieu ban ghi trong pascal 3

Cấu trúc chung định nghĩa các biến kiểu bản ghi trong Pascal:

var

r1, r2, ... : record-name;

Hoặc bạn có thể định nghĩa trực tiếp các biến kiểu bản ghi trong Pascal:

kieu ban ghi trong pascal 4

Truy cập các trường trong kiểu bản ghi Pascal

Để truy cập các trường bất kỳ trong kiểu bản ghi trong Pascal, chúng ta có thể sử dụng toán tử truy cập (.). Toán tử truy cập thành viên được mã hóa là dấu chấm giữa tên biến bản ghi và trường mà bạn muốn truy cập.

Dưới đây là ví dụ cách truy cập các trường trong kiểu bản ghi Pascal:

kieu ban ghi trong pascal 5

Khi mã trên được biên dịch và thực thi, nó sẽ trả về kết quả dưới đây:

kieu ban ghi trong pascal 6

Truyền bản ghi trong Pascal như đối số của chương trình con

Bạn có thể truyền bản ghi trong Pascal như đối số của chương trình con theo cách tương tự mà bạn có thể truyền bất kỳ một biến hoặc con trỏ nào.

Trong ví dụ dưới đây bạn có thể truy cập các trường bản ghi tương tự như cách mà bạn truy cập ở ví dụ trên:

kieu ban ghi trong pascal 7

Khi mã trên được biên dịch và thực thi, nó sẽ trả về kết quả dưới đây:

kieu ban ghi trong pascal 8

Con trỏ trong bản ghi Pascal

Bạn có thể định nghĩa con trỏ tới bản ghi tương tự như cách bạn định nghĩa con trỏ tới các biến bất kỳ như dưới đây:

kieu ban ghi trong pascal 9

Bây giờ bạn có thể lưu trữ địa chỉ của một biến kiểu bản ghi trong biến con trỏ được định nghĩa ở trên. Để khai báo một biến kiểu biến con trỏ, bạn sử dụng từ khóa var:

var

r1, r2, ... : record-ptr;

Trước khi sử dụng các con trỏ này, bạn phải tạo bộ nhớ cho một biến kiểu bản ghi, sẽ được thao tác bằng các con trỏ này.

new(r1);

new(r2);

Để truy cập các trường của 1 bản ghi sử dụng con trỏ tới bản ghi đó, bạn phải sử dụng toán tử ^. như dưới đây:

kieu ban ghi trong pascal 10

Cuối cùng xóa bộ nhớ đã sử dụng trong trường hợp không còn sử dụng bộ nhớ nữa:

dispose(r1);

dispose(r2);

Ví dụ dưới đây sử dụng con trỏ tới bản ghi Book:

kieu ban ghi trong pascal 11

Khi mã trên được biên dịch và thực thi, nó sẽ trả về kết quả dưới đây:

kieu ban ghi trong pascal 12

Lệnh With trong bản ghi Pascal

Như đã đề cập ở trên, chúng ta có thể truy cập các trường của một bản ghi bằng cách sử dụng toán tử truy cập (.). Bằng cách này tên của biến bản ghi sẽ phải được viết nhiều lần. Vì vậy sử dụng lệnh With là giải pháp thay thế trong trường hợp này.

Dưới đây là ví dụ đoạn mã lấy từ ví dụ đầu tiên:

kieu ban ghi trong pascal 13

Đoạn mã tương tự được viết bằng cách sử dụng lệnh With:

kieu ban ghi trong pascal 14

Như vậy bài viết trên Zaidap.com vừa cung cấp cho bạn các thông tin về kiểu bản ghi trong Pascal. Để tìm hiểu rõ hơn về toán tử trong Pascal, cấu trúc chung của một chương trình trong Pascal, bạn đọc có thể tham khảo một số bài viết trước đã có trên Zaidap.com nhé.

http://thuthuat.taimienphi.vn/kieu-ban-ghi-trong-pascal-33957n.aspx
Bên cạnh đó, các bạn có thể tham khảo khảo thêm bài viết về Biến kiểu Variant trong Pascal tại đây.

0