Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C 언어에서 strncmp() 함수란 무엇입니까?

<시간/>

C 라이브러리 함수 int strncmp(const char *str1, const char *str2, size_t n) str1의 최대 처음 n바이트를 비교합니다. 및 str2 .

문자 배열을 문자열이라고 합니다.

선언

배열을 선언하는 구문은 다음과 같습니다 -

char stringname [size];

예를 들어 - char string[50]; 길이 50자의 문자열

초기화

  • 단일 문자 상수 사용 -
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
  • 문자열 상수 사용하기 -
char string[10] = "Hello":;

액세스 − '\0'이 나타날 때까지 문자열에 액세스하는 데 사용되는 제어 문자열 "%s"가 있습니다.

strncmp() 함수

이 함수는 두 문자열의 처음 'n' 문자를 비교하는 데 사용됩니다.

구문

strncmp() 함수의 구문은 다음과 같습니다 -

strncmp ( string1, string2, n)

예시

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

출력은 두 문자열이 동일하다는 것입니다.

예시

다음은 strncmp 라이브러리 함수 -

를 사용하여 두 문자열 사이의 특정 문자를 비교하는 C 프로그램입니다.
#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