[r]
(1)CHU IỖ
(STRING)
(2)CHU I KÝ TỖ Ự (String)
Chuôi ky t la môt day cac phân t , ̃ ́ ự ̀ ̣ ̃ ́ ̀ ử
môi phân t co kiêu ky t (̃ ̀ ử ́ ̉ ́ ự char).
Chuôi ky t đ̃ ́ ự ược kêt thuc băng ky t ́ ́ ̀ ́ ự
‘\0’(NULL) Do đo khai bao chu i ph i ́ ́ ỗ ả
khai bao d phân t đê ch a ky t ‘\0’.́ ư ̀ ử ̉ ứ ́ ự
(3)CHU I KÝ T Ỗ Ự (String)
Ví d :ụ
Index s
0
‘T’ ‘I’ ‘N’ ‘ ‘ ‘H’ ‘O’ ‘C’ ‘\0’ char s[8] = ”TIN HOC” ;
// khai bao chuôi S co phân t kiêu char ́ ̃ ́ ̀ ử ̉
(4)CHU I KÝ T Ỗ Ự (String)
co cach khai bao sau :́ ́ ́
Cach 1́ : gi ng nh m ng 1chi uố ư ả ề
char < Tên chuôi > ̃ [ Sô ky t đa cua chuôi ́ ́ ự ́ ̉ ̃ ] ;
Vi dú ̣: char str[25];
Chu i str mang chi u kiêu ky t , co 25 phân t (nh vây đa ta co ỗ ̉ ề ̉ ́ ự ́ ̀ ử ư ̣ ́ ́
thê nhâp 24 ky t vi phân t th 25 đa ch a ký t k t thúc chu i ‘\0’ ) ̉ ̣ ́ ự ̀ ̀ ử ứ ̃ ứ ự ế ỗ
Chú ý:
char str[25];
str = “Hello”; // Error
strcpy(str, “Hello”); // h p h p lợ ợ ệ
(5)CHU I KÝ T Ỗ Ự (String)
Các thao tác chu i:ỗ
#include <stdio.h> #include <conio.h> #include <string.h> void main() { char str[80]; clrscr();
printf("Nhap vao chuoi:");
gets(str);
printf("Chuoi vua nhap la: %s\n", str); getch();
}
Nhâp chuôi: ̣ ̃ char *gets(char *s); Ví d :ụ
Ph i ả
(6)CHU I KÝ T Ỗ Ự (String)
Chú ý:
Cũng gi ng nh ki u m ng m t chi u, thao tác truy xu t ố ể ả ộ ề ấ
ph n t chu i hoàn toàn tầ ỗ ương t Bên c nh đó, ki u d li u ự ể ữ ệ
này cài đ t s n m t s hàm th vi n r t h u ích nên ặ ẵ ộ ố ệ ấ ữ
trong trình thao tác chu i nên cài đ t ta c g ng ỗ ặ ố ắ t n ậ
d ng t i đa nh ng hàm liên quanụ ố ữ
Không nên s d ng hàm scanf()ử ụ đ nh p chu i trể ậ ỗ ường
h p chu i d li u nh p vào có ch a kho ng tr ng ợ ỗ ữ ệ ậ ứ ả ắ
N uế nh p chu i phía sau hàm scanf()ậ ỗ nên chèn hàm
fflush(stdin) ho c hàm ặ flushall() gi a ữ scanf gets() đ xóa ể
(7)