Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

ฟังก์ชัน strncmp () ในภาษา C คืออะไร


ฟังก์ชันไลบรารี C int strncmp(const char *str1, const char *str2, size_t n) เปรียบเทียบได้มากที่สุด n ไบต์แรกของ str1 และ str2 .

อาร์เรย์ของอักขระเรียกว่าสตริง

ประกาศ

ไวยากรณ์สำหรับการประกาศอาร์เรย์มีดังนี้ −

char stringname [size];

ตัวอย่างเช่น − char string[50]; สตริงที่มีความยาว 50 ตัวอักษร

การเริ่มต้น

  • การใช้ค่าคงที่อักขระตัวเดียว −
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
  • การใช้ค่าคงที่สตริง −
char string[10] = "Hello":;

กำลังเข้าถึง − มีสตริงควบคุม "%s" ที่ใช้สำหรับเข้าถึงสตริงจนกว่าจะพบ '\0'

ฟังก์ชัน strnmp ( )

ฟังก์ชันนี้ใช้สำหรับเปรียบเทียบอักขระ 'n' ตัวแรกของ 2 สตริง

ไวยากรณ์

ไวยากรณ์สำหรับฟังก์ชัน strncmp() มีดังนี้ -

strncmp ( string1, string2, n)

ตัวอย่าง

char a[10] = "the";
char b[10] = "there"
strncmp (a,b,3);

ผลลัพธ์จะเป็นว่าทั้งสองสตริงเท่ากัน

ตัวอย่าง

รับด้านล่างเป็นโปรแกรม C เพื่อเปรียบเทียบอักขระเฉพาะระหว่างสองสตริงโดยใช้ฟังก์ชันไลบรารี strncmp -

#include<stdio.h>
#include<string.h>
void main(){
   //Declaring two strings//
   char string1[25],string2[25];
   int value;
   //Reading string 1 and String 2//
   printf("Enter String 1: ");
   gets(string1);
   printf("Enter String 2: ");
   gets(string2);
   //Comparing using library function//
   value = strncmp(string1,string2,4);
   //If conditions//
   if(value==0){
      printf("%s is same as %s",string1,string2);
   }
   else if(value>0){
      printf("%s is greater than %s",string1,string2);
   } else {
      printf("%s is less than %s",string1,string2);
   }
}

ผลลัพธ์

เมื่อโปรแกรมข้างต้นทำงาน มันจะให้ผลลัพธ์ดังต่อไปนี้ −

Run1:
Enter String 1: Welcome
Enter String 2: TO my World
Welcome is greater than TO my World
Run 2:
Enter String 1: welcome
Enter String 2: welcome
welcome is same as welcome