Mặc dù có nhiều ưu và nhược điểm trên Pascal nhưng không thể phủ nhận rằng ngôn ngữ này là ngôn ngữ cơ bản mà bất kỳ lập trình viên nào cũng cần phải biết. Các kiểu dữ liệu của Pascal chỉ ra ý nghĩa, ràng buộc, các giá trị có thể, các toán tử, các hàm và phương thức lưu trữ gắn liền với nó.
Các kiểu dữ liệu Integer (số nguyên), Real (kiểu thực), Boolean và Character (kiểu ký tự) được gọi là kiểu dữ liệu chuẩn. Các kiểu dữ liệu có thể được phân loại dưới dạng kiểu vô hướng (scalar), kiểu dữ liệu dạng con trỏ (pointer) và kiểu dữ liệu cấu trúc (structured).
Ví dụ về các kiểu dữ liệu vô hướng (scalar) như integer (kiểu số nguyên), real (kiểu thực), Boolean, character (kiểu ký tự), subrange (kiểu miền con) và enumerate (kiểu liệt kê). Kiểu dữ liệu cấu trúc được tạo từ kiểu dữ liệu vô hướng, ví dụ như array (mảng), record (bản ghi), file và set (tập hợp). Kiểu dữ liệu dạng con trỏ (pointer) Taimienphi.vn sẽ đề cập đến sau.
Kiểu dữ liệu trong Pascal
Các kiểu dữ liệu trong Pascal được tóm gọn trong sơ đồ dưới đây:
1. Khai báo kiểu (declaration)
Khai báo kiểu được sử dụng để khai báo kiểu dữ liệu của một định danh. Cú pháp khai báo kiểu:
type-identifier-1, type-identfier-2 = type-specifier;
Ví dụ khai báo dưới đây định nghĩa các biến ngày và tuổi theo kiểu integer (kiểu số nguyên), yes và true theo kiểu Boolean, tên và thành phố theo kiểu string (kiểu chuỗi), các khoản phí và chi phí là kiểu real (kiểu thực):
type
days, age = integer;
yes, true = boolean;
name, city = string;
fees, expenses = real;
Kiểu Integer (kiểu số nguyên)
Bảng dưới đây là chi tiết các kiểu số nguyên chuẩn với kích thước lưu trữ và các dải giá trị được sử dụng trong Object Pascal:
2. Hằng (Constant)
Sử dụng hằng để chương trình có thể đọc được nhiều hơn và có giá trị không thay đổi trong suốt quá trình thực hiện chương trình. Pascal cho phép hằng là các số, chuỗi logic, chuỗi và các ký tự.
Hằng số có thể được khai báo trong phần khai báo của chương trình bằng cách xác định khai báo const.
Cú pháp khai báo kiểu hàm:
const
Identifier = contant_value;
Dưới đây là ví dụ khai báo hằng:
VELOCITY_LIGHT = 3.0E=10;
PIE = 3.141592;
NAME = ‘Stuart Little’;
CHOICE = yes;
OPERATOR = ‘+’;
Tất cả các khai báo hằng phải được đặt trước khai báo biến.
3. Kiểu dữ liệu liệt kê
Kiểu dữ liệu liệt kê là các kiểu dữ liệu do người dùng xác định. Kiểu dữ liệu này cho phép các giá trị được chỉ định trong một danh sách. Chỉ cho phép các toán tử gán và các toán tử quan hệ trên các kiểu dữ liệu liệt kê. Kiểu dữ liệu được liệt kê được khai báo như sau:
type
enum-identifier = (item1, item2, item3, … )
Dưới đây là ví dụ kiểu khai báo liệt kê:
type
SUMMER = (April, May, June, July, September);
COLORS = (Red, Green, Blue, Yellow, Magenta, Cyan, Black, White);
TRANSPORT = (Bus, Train, Airplane, Ship);
Trong ví dụ trên, các mục được liệt kê trong miền của một kiểu liệt kê xác định thứ tự các mục. Ví dụ, trong kiểu dữ liệu liệt kê SUMMER, tháng 4 có trước tháng 5, tháng 5 có trước tháng 6, … . Miền của các định danh kiểu liệt kê không thể bao gồm các hằng số hoặc các hằng ký tự.
4. Kiểu dữ liệu miền con (Subrange)
Kiểu dữ liệu miền con cho phép một biến giả sử các giá trị nằm trong một dải nhất định. Ví dụ, nếu tuổi của cử tri nằm trong 18 đến 100, biến bao gồm tên tuổi là:
var
age: 18 … 100;
Trong các phần tiếp theo Taimienphi.vn sẽ giới thiệu cho bạn chi tiết cách khai báo biến. Ngoài ra bạn cũng có thể xác định kiểu khai báo miền con bằng cách sử dụng khai báo kiểu. Cú pháp để khai báo kiểu phân loại:
type
subrange-identifier = lower-limit … upper-limit;
Dưới đây là một số ví dụ kiểu khai báo miền con:
const
P = 18;
Q = 90;
type
Number = 1 … 100;
Value = P … Q;
Các kiểu khai báo miền con có thể được tạo ra từ tập hợp con của kiểu dữ liệu liệt kê đã được xác định.
Ví dụ:
type
months = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
Summer = Apr … Aug;
Winter = Oct … Dec;
Tôi là Nguyễn Văn Sỹ có 15 năm kinh nghiệm trong lĩnh vực thiết kế, thi công đồ nội thất; với niềm đam mê và yêu nghề tôi đã tạo ra những thiết kếtuyệt vời trong phòng khách, phòng bếp, phòng ngủ, sân vườn… Ngoài ra với khả năng nghiên cứu, tìm tòi học hỏi các kiến thức đời sống xã hội và sự kiện, tôi đã đưa ra những kiến thức bổ ích tại website nhaxinhplaza.vn. Hy vọng những kiến thức mà tôi chia sẻ này sẽ giúp ích cho bạn!