
CHUYÊN Đ XÂU KÍ TỀ Ự
A- KI N TH C C B NẾ Ứ Ơ Ả
I. CÁCH KHAI BÁO VÀ TRUY XU T ĐN PH N T XÂUẤ Ế Ầ Ử
1. Cách khai báo:
Var: STRING[đ dài c a xâu];ộ ủ
- Xâu ký t trong b nh nó chi m s byte b ng s ký t c c đi đc khaiự ộ ớ ế ố ằ ố ự ự ạ ượ
báo c ng v i byte đu tiên ch a s ký t hi n có c a xâu. Đ dài t i đa c a xâu kýộ ớ ầ ứ ố ự ệ ủ ộ ố ủ
t là 255.ự
- Ngoài ra có các ki u khai báo khác c a xâu nh :ể ủ ư
+ Shortstring: Chính là String.
+ longstring: là m ng ký t có ki u char. Thông th ng ki u char có kíchả ự ể ườ ể
th c 16 bit nên m ng có kích th c t i đa 16 bit = 65535 ký t .ướ ả ướ ố ự
+ ansistring (ch có trong free pascal mà không có trong turbo pascal) cóỉ
kích th c g n 2GB = 2ướ ầ 30 B nên th ng đc xem là vô h n.ườ ượ ạ
2. Cách nh p/xu t:ậ ấ
Cách đc hay vi t ki u STRING cũng t ng t nh các ki u d li u khác, taọ ế ể ươ ự ư ể ữ ệ
s d ng các th t c READ, ho c WRITE.ử ụ ủ ụ ặ
Ví d :ụ Readln(st); Writeln(st);
3. Truy c p t ng ph n t c a xâu ký t :ậ ừ ầ ử ủ ự
Vi c truy c p đn ph n t trong xâu t ng t m ng 1 chi uệ ậ ế ầ ử ươ ự ả ề đc thông quaượ
tên bi n ki u STRING và ch s c a nóế ể ỉ ố ủ
Ví d :ụ St := 'Le Thanh Lam'; write(st[4]);
-> K t qu : cho ra ch T.ế ả ữ
II. CÁC THAO TÁC TRÊN XÂU KÝ TỰ
1. Phép c ng xâu:ộ
Ví d :ụ st1:=’tin’; st2:=’ hoc’; St=st1 + st2;
-> St = ‘tin hoc’
2. Phép so sánh:
Hai xâu ký t có th so sánh v i nhau b ng các phép so sánh =, >, <…ự ể ớ ằ
Nguyên t c so sánh th c hi n nh sau, chúng s đem t ng ký t t ng ng v iắ ự ệ ư ẽ ừ ự ươ ứ ớ
nhau đ so sánh, xâu nào có ký t có s th t trong b ng mã ASCII l n h n thì xâuể ự ố ứ ự ả ớ ơ
đó l n h n.ớ ơ
Hai xâu ký t đc g i là b ng nhau khi chúng hoàn toàn gi ng nhau (có đ dàiự ượ ọ ằ ố ộ
nh nhau).ư
Ví d :ụ st1:=’tin’; st2:=’ hoc’; khi đó st1>st2
3. Các th t c và hàm chu n x lý xâu ký tủ ụ ẩ ử ự
a. Hàm length(st): cho đ dài th c c a xâu ký t stộ ự ủ ự
Ví d : st:=’tin hoc’ thì LENGTH(st) cho b ng 7.ụ ằ
b. Hàm upcase(ch): Cho ký t hoa c a ký t chự ủ ự
Ví d : ch:= 'a'; ch:= upcase(ch)ụ ® ch = 'A'
1