Chương 11: Xâu ký tự (STRING)

Một phần của tài liệu Giáo trình lập trình cấu trúc pascal (Trang 59 - 60)

11.1 Định nghĩa xâu ký tự

Một xâu ký tự được định nghĩa bằng từ khoá String, theo sau là số ký tự cực đại

có thể có của xâu ký tự, được đặt trong ngoặc vuông.

String[n]; với n là độ dài cực đại của xâu.

Ví dụ 1: Type Xau1= String [10]; Xau2= String [40]; Var A:Xau1; B: Xau2;

Hay cũng có thể khai báo trực tiếp:

Var

A:String[10]; B:String[40];

Xâu ký tự chiếm số byte bằng số ký tự cực đại khi khai báo, cộng với một byte đầu tiên chứa số ký tự hiện có của xâu.

Ví dụ 2: Var a,b:String[15]; Begin a:='Tin hoc'; ... End.

Biến a khai báo ở trên được gán giá trị B: a:='Tin hoc';

a trong trường hợp này chỉ có độ dài 7 ký tự, mặc dù độ dài cực đại cho phép của

biến a là 15. Như đã nói ở trên, byte đầu tiên để biểu diễn độ dài xâu ký tự. Vìđộ

dài xâu ký tự được biểu diễn bằng một byte nên ta thấy ngay rằng độ dài xâu ký tự chỉ nằm trong khoảng từ 1 đến 255.

Người ta có thể hiểu String nh ư là một mảng ký tự có chỉ số chạy từ 0 đến độ dài cực đại, phần tử thứ 0 chứa độ dài thực của xâu. Song mảng ký tự có độ dài luôn

luôn không đổi.

Ta có thể truy nhập vào từng ký tự của một xâu ký tự với tên biến và chỉ số đặt

trong ngoặc vuông như khi truy nhập vào phần tử của mảng. Chỉ số này có thể

chạy từ 1 tới độ dài cực đại của xâu ký tự. Ví dụ:

Writeln(a[3]) sẽ cho chữ 'n' (*vì a:='Tin hoc'*)

Nếu vị trí ký tự đó nằm ngo ài độ dài thực của xâu thì phần tử đó của xâu không xác định. Vì vậy khi truy nhập vào từng phần tử của xâu ta cần phải kiểm tra

11.2 Các thao tác với xâu ký t

Một phần của tài liệu Giáo trình lập trình cấu trúc pascal (Trang 59 - 60)