strncmp()
ฟังก์ชัน strncmp() ใช้เพื่อเปรียบเทียบสตริงซ้ายกับสตริงขวาจนถึงตัวเลข มันทำงานเหมือนกับ strcmp() ส่งคืนค่าที่มากกว่าศูนย์เมื่ออักขระที่ตรงกันของสตริงด้านซ้ายมีค่า ASCII มากกว่าอักขระของสตริงด้านขวา ส่งคืนค่าที่น้อยกว่าศูนย์เมื่ออักขระที่ตรงกันของสตริงด้านซ้ายมีค่า ASCII น้อยกว่าอักขระของสตริงด้านขวา
นี่คือไวยากรณ์ของ strncmp() ในภาษา C
int strncmp ( const char *leftString, const char *rightString, size_t number );
ที่นี่
-
leftString − สตริงแรกที่จะเปรียบเทียบกับสตริงที่ถูกต้อง
-
rightString − สตริงที่สองที่ใช้เปรียบเทียบสตริงแรก
-
หมายเลข − จำนวนอักขระสูงสุดที่จะเปรียบเทียบ
นี่คือตัวอย่าง strncmp() ในภาษา C
ตัวอย่าง
#include<stdio.h>
#include<string.h>
int main() {
char str1[] = "blank";
char str2[] = "Hello World!";
int result = strncmp(str1, str2, 1);
if (result==0)
printf("Strings are equal");
else
printf("Strings are unequal");
printf("\nValue returned by strcmp() is: %d" , result);
return 0;
} ผลลัพธ์
นี่คือผลลัพธ์
Strings are unequal Value returned by strcmp() is: 26
strcmp()
ฟังก์ชัน strcmp() เป็นฟังก์ชันไลบรารีในตัวและประกาศในไฟล์ส่วนหัว "string.h" ฟังก์ชันนี้ใช้เพื่อเปรียบเทียบอาร์กิวเมนต์สตริง มันเปรียบเทียบสตริง lexicographically ซึ่งหมายความว่าจะเปรียบเทียบทั้งสตริงอักขระด้วยอักขระ จะเริ่มเปรียบเทียบอักขระตัวแรกของสตริงจนกว่าอักขระของสตริงทั้งสองจะเท่ากันหรือพบอักขระ NULL
ถ้าอักขระตัวแรกของทั้งสองสตริงเท่ากัน จะตรวจสอบอักขระตัวที่สองเป็นต้น กระบวนการนี้จะดำเนินต่อไปจนกว่าจะพบอักขระ NULL หรืออักขระทั้งสองไม่เท่ากัน คืนค่าศูนย์หากสตริงทั้งสองเหมือนกัน นั่นคือ อักขระเหมือนกันในทั้งสองสตริง
ส่งคืนค่าที่มากกว่าศูนย์เมื่ออักขระที่ตรงกันของสตริงด้านซ้ายมีค่า ASCII มากกว่าอักขระของสตริงด้านขวา ส่งคืนค่าที่น้อยกว่าศูนย์เมื่ออักขระที่ตรงกันของสตริงด้านซ้ายมีค่า ASCII น้อยกว่าอักขระของสตริงด้านขวา
นี่คือไวยากรณ์ของ strcmp() ในภาษา C
int strcmp(const char *leftString, const char *rightString );
ที่นี่
-
leftString − สตริงแรกที่จะเปรียบเทียบกับสตริงที่ถูกต้อง
-
rightString − สตริงที่สองที่ใช้เปรียบเทียบสตริงแรก
นี่คือตัวอย่าง strcmp() ในภาษา C
ตัวอย่าง
#include<stdio.h>
#include<string.h>
int main() {
char str1[] = "hello World!";
char str2[] = "Hello World!";
int result = strcmp(str1, str2);
if (result==0)
printf("Strings are equal");
else
printf("Strings are unequal");
printf("\nValue returned by strcmp() is: %d" , result);
return 0;
} ผลลัพธ์
นี่คือผลลัพธ์:
Strings are unequal Value returned by strcmp() is: 32