Chương IV: Kiểu Dữ liệu Có Cấu Trúc
§12. KIỂU DỮ LIỆU XÂU
I. Khai báo kiểu dữ liệu xâu:
-Xâu là dãy các kí tự trong bảng mã ASCII. đặt
trong hai dấu phẩy ‘và‘.
- Độ dài của xâu là số lượng kí tự trong một xâu.
- Xâu rỗng là xâu có độ dài 0 biểu diễn ‘’
- Kí tự trống ‘ ‘ gõ phím Space
Ví dụ: Xâu kí tự ‘Nhom 7’ độ dài: 6
- Để khai báo biến kiểu dữ liệu xâu, TP dùng riêng
STRING tiếp theo là Biến kiểu xâu có thể khai báo
như sau:
VAR <Tên biến> : STRING [ Độ dài lớn nhất của
xâu] ;
- Độ dài lớn nhất của xâu :(có giá trị từ 1..255) được
ghi trong cặp ngoặc [ và ].
Ví dụ: Name là biến kiểu xâu tối đa 8 kí tự
- Trong mô tả xâu có thể bỏ qua phần khai báo độ
dài, chẳng hạn:
Var Chugiai : String;
Khi đó, độ dài lớn nhất của xâu sẽ nhận giá
trị ngầm định là 255.
Var Name : string [8];
II. Các thao tác xử lí xâu
Tham chiếu đến phần tử của xâu được xác định
bởi tên xâu và chỉ số đặt trong cặp ngoặc vuông.
Tên biến [ i ] ; i : thứ tự của kí tự đó.
Ví dụ: Name[1] có nội dung là ‘N’.
Name[5] có nội dung là ‘ ‘
Name[7] có nội dung là ‘’
Name[9] không xác định vì kiểu xâu
nhau hoàn toàn.
Ví dụ 3:
‘TIN HOC’ = ‘TIN HOC’
B. Để xử lí các xâu, có thể sử dụng các thủ tục
và hàm chuẩn dưới đây:
1. Thủ tục chuẩn Delete (St, vt, n)
Thực hiện việc xóa n kí tự của xâu St bắt đầu từ
vị trí vt.
Giá trị của St Thao tác Kết quả
‘abcdef’ Delete(St,5,2) ‘abcd’
‘Song Hong’ Delete(St,1,5) ‘Hong’
Ví dụ 4:
Giá trị của St Thao tác Kết quả
‘abcdef’ Delete(St,5,2) ‘abcd’
‘Song Hong’ Delete(St,1,5) ‘Hong’
Ví dụ 4:
2. Thủ tục Insert (S1, S2, vt)
Ví dụ 5:
Giá trị S1 Giá trị S2 Thao tác Kết quả
‘PC’ ‘IBM486’ Insert(S1,S2,4) ‘IBM PC 486’
‘N’ ‘Hinh.2’ Insert(S1,S2,6) ‘Hinh. N2’
Chèn xâu S1 vào xâu S2, bắt đầu ở vị trí vt.