Lập trình C - Chuỗi trong C

Chuỗi (String) trong C

Chuỗi (String) trong C là một mảng ký tự được kết thúc bởi \0 (ký tự null).

Có hai cách để khai báo chuỗi trong C.

  1. Mảng ký tự.
  2. Chuỗi chữ.

Khai báo chuỗi bằng mảng ký tự (char)

Ví dụ khai báo chuỗi trong C bằng mảng char.

char ch[12] = {'h', 'i', 'e', 'p', 's', 'i', 'i', 't', '.', 'c', 'o','m', '\0'};

 Như bạn đã biết, chỉ số mảng bắt đầu từ 0, vì vậy nó sẽ được biểu diễn như trong hình dưới đây.


Khai báo chuỗi bằng chuỗi chữ

char ch[12] = "hiepsiit.com";

Trong trường hợp này, ký tự ‘\0’ sẽ được trình biên dịch thêm vào cuối chuỗi.

Khi khai báo chuỗi, kích thước là không bắt buộc nên bạn có thể khai báo như sau:

char ch[12] = {'h', 'i', 'e', 'p', 's', 'i', 'i', 't', '.', 'c', 'o','m', '\0'};
char ch[12] = "hiepsiit.com";

Sự khác biệt giữa mảng char và chuỗi chữ

Sự khác biệt duy nhất là chuỗi chữ không thể thay đổi trong khi chuỗi tuyên bố bởi mảng char có thể được thay đổi.


Ví dụ chuỗi trong C

#include<stdio.h>
#include <math.h>
 
int main() {
    char ch1[] = {'h', 'i', 'e', 'p', 's', 'i', 'i', 't', '.', 'c', 'o','m', '\0'};
    char ch2[] = "hiepsiit.com";
 
    printf("Mang char la: %s\n", ch1);
    printf("Chuoi chu la: %s\n", ch2);
    return 0;
}

Kết quả: 

Mang char la: hiepsiit.com
Chuoi chu la: hiepsiit.com