C strcmp () - Thư viện chuẩn C

Hàm strcmp () so sánh hai chuỗi và trả về 0 nếu cả hai chuỗi đều giống nhau.

C strcmp () Nguyên mẫu

 int strcmp (const char * str1, const char * str2);

Các strcmp()chức năng phải mất hai chuỗi và trả về một số nguyên.

Các strcmp()so sánh hai chuỗi từng ký tự.

Nếu ký tự đầu tiên của hai chuỗi bằng nhau thì ký tự tiếp theo của hai chuỗi được so sánh. Điều này tiếp tục cho đến khi các ký tự tương ứng của hai chuỗi khác nhau hoặc ''đạt đến một ký tự rỗng .

Nó được xác định trong string.htệp tiêu đề.

Giá trị trả về từ strcmp ()

Giá trị trả lại Nhận xét
0 nếu cả hai chuỗi giống hệt nhau (bằng nhau)
tiêu cực nếu giá trị ASCII của ký tự chưa khớp đầu tiên nhỏ hơn ký tự thứ hai.
sô nguyên dương nếu giá trị ASCII của ký tự chưa khớp đầu tiên lớn hơn ký tự thứ hai.

Ví dụ: Hàm strcmp () C

 #include #include int main() ( char str1() = "abcd", str2() = "abCd", str3() = "abcd"; int result; // comparing strings str1 and str2 result = strcmp(str1, str2); printf("strcmp(str1, str2) = %d", result); // comparing strings str1 and str3 result = strcmp(str1, str3); printf("strcmp(str1, str3) = %d", result); return 0; ) 

Đầu ra

 strcmp (str1, str2) = 32 strcmp (str1, str3) = 0

Ký tự chưa khớp đầu tiên giữa chuỗi str1 và str2 là ký tự thứ ba. Giá trị ASCII của 'c' là 99 và giá trị ASCII của 'C' là 67. Do đó, khi các chuỗi str1 và str2 được so sánh, giá trị trả về là 32.

Khi so sánh chuỗi str1 và str3, kết quả là 0 vì cả hai chuỗi đều giống hệt nhau.

thú vị bài viết...