string.h trong C

string.h trong C

Header file có tên string.h trong Thư viện C chuẩn định nghĩa một kiểu biến, một macro và các hàm đa dạng để thao tác các mảng ký tự.

Các biến được định nghĩa trong string.h

Bảng dưới liệt kê các kiểu biến đã được định nghĩa trước trong string.h:

size_t: Đây là kiểu nguyên không dấu và là kết quả của từ khóa sizeof

Các macro được định nghĩa trong string.h

Bảng sau liệt kê các macro đã được định nghĩa trước trong string.h:

NULL: Macro này là giá trị của một hằng con trỏ null

Các hàm được định nghĩa trong string.h

Dưới đây là một số hàm được định nghĩa trong string.h:

STT Hàm & Mô tả
1 Hàm void *memchr(const void *str, int c, size_t n)

Tìm kiếm sự xuất hiện đầu tiên của ký tự c (một unsigned char) trong n byte đầu tiên của chuỗi được trỏ tới bởi tham số str.

2 Hàm int memcmp(const void *str1, const void *str2, size_t n)

So sánh n byte đầu của hai chuỗi str1 và str2.

3 Hàm void *memcpy(void *dest, const void *src, size_t n)

Sao chép n ký tự từ src tới dest

4 Hàm void *memmove(void *dest, const void *src, size_t n)

Hàm khác để sao chép n ký tự từ src tới dest

5 Hàm void *memset(void *str, int c, size_t n)

Sao chép ký tự c (một unsigned char) tới n ký tự đầu tiên của chuỗi được trỏ tới bởi tham số str.

6 Hàm char *strcat(char *dest, const char *src)

Phụ thêm (append) chuỗi được trỏ tới bởi src, vào cuối chuỗi được trỏ tới bởi dest

7 Hàm char *strncat(char *dest, const char *src, size_t n)

Phụ thêm (append) chuỗi, được trỏ tới bởi src, vào cuối chuỗi được trỏ tới bởi dest, với độ dài lên tới n ký tự

8 Hàm char *strchr(const char *str, int c)

Tìm kiếm sự xuất hiện đầu tiên của ký tự c (một unsigned char) trong chuỗi được trỏ tới bởi tham số str

9 Hàm int strcmp(const char *str1, const char *str2)

So sánh chuỗi được trỏ tới bởi sr1 với chuỗi được trỏ tới bởi srt2

10 Hàm int strncmp(const char *str1, const char *str2, size_t n)

So sánh n byte đầu tiên của str1 và str2.

11 Hàm int strcoll(const char *str1, const char *str2)

So sánh chuỗi str1 và str2. Kết quả phụ thuộc vào thiết lập LC_COLLATE

12 Hàm char *strcpy(char *dest, const char *src)

Sao chép chuỗi được trỏ tới bởi src tới dest

13 Hàm char *strncpy(char *dest, const char *src, size_t n)

Sao chép tới n ký tự từ chuỗi được trỏ tới bởi src tới dest

14 Hàm size_t strcspn(const char *str1, const char *str2)

Tính độ dài của đoạn ký tự của chuỗi str1 mà không chứa các ký tự trong str2

15 Hàm char *strerror(int errnum)

Tìm kiếm một mảng nội tại cho số lỗi errnum và trả về một con trỏ tới một chuỗi thông báo lỗi

16 Hàm size_t strlen(const char *str)

Tính toán độ dài của chuỗi str (không bao gồm ký tự null kết thúc)

17 Hàm char *strpbrk(const char *str1, const char *str2)

Tìm ký tự đầu tiên trong chuỗi str1 mà kết nối bất cứ ký tự nào đã được xác định trong str2

18 Hàm char *strrchr(const char *str, int c)

Tìm kiếm sự xuất hiện cuối cùng của ký tự c (một unsigned char) trong chuỗi được trỏ tới bởi tham số str

19 Hàm size_t strspn(const char *str1, const char *str2)

Tính toán độ dài của đoạn ký tự đầu tiên của chuỗi str1 mà chứa các ký tự trong str2

20 Hàm char *strstr(const char *haystack, const char *needle)

Tìm kiếm sự xuất hiện cuối cùng của cả chuỗi needle (không bao gồm ký tự null kết thúc) mà có mặt trong chuỗi haystack

21 Hàm char *strtok(char *str, const char *delim)

Chia chuỗi str thành một dãy các token (các chuỗi nhỏ hơn) được phân biệt riêng rẽ bởi dấu tách delim

22 Hàm size_t strxfrm(char *dest, const char *src, size_t n)

Biến đổi n ký tự đầu tiên của chuỗi src vào trong locale hiện tại và đặt chúng trong chuỗi dest