Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C言語のstrcoll()関数とは何ですか?


Cライブラリ関数intstrcoll(const char * str1、const char * str2) 文字列str1を比較します str2へ 。結果は、場所のLC_COLLATE設定によって異なります。

文字の配列は文字列と呼ばれます

宣言

以下に配列の宣言を示します-

char stringname [size];

例-charstring[50];長さ50文字の文字列

初期化

  • 単一文字定数の使用-
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
  • 文字列定数の使用-
char string[10] = "Hello":;

アクセス −「\0」に遭遇するまで文字列にアクセスするために使用される制御文字列「%s」があります

Strcoll()関数

この関数はstrcmp()関数と同じで、2つの文字列を比較し、比較の値に基づいて整数を返します。

宣言

以下に、strcoll()関数の宣言を示します-

int strcoll(const char *string1, const char *string2)

ここで

  • string1は最初の文字列を指します。
  • string2は2番目の文字列を指します。

strcoll()の戻り値

  • 文字列string1の最初の一致しない文字のASCII値がstring2より大きい場合は>0。

  • <文字列string1の最初の一致しない文字のASCII値がstring2より小さい場合。

  • 両方の文字列が等しい場合は=0。

次の例は、strcoll()関数の使用法を示しています。

#include <stdio.h>
#include <string.h>
int main () {
   char string1[20];
   char string2[20];
   int final;
   strcpy(string1, "WELCOME");
   strcpy(string2, "Welcome to the world!");
   final = strcoll(string1, string2);
   if(final > 0){
      printf(" string1 is greater than string2");
   } else if(final < 0) {
      printf("string1 is less than string2");
   } else {
      printf("string1 and string2 are equal");
   }
   return 0;
}

出力

上記のプログラムを実行すると、次の結果が得られます-

string1 is less than string2

別のプログラムを見てみましょう。

以下は、実行時にstrcollを使用して2つの文字列を比較するためのプログラムです-

#include <stdio.h>
int main (){
   char string1[20];
   char string2[20];
   int final;
   printf("enter string1:\n");
   gets(string1);
   printf("enter string2:\n");
   gets(string2);
   final = strcoll(string1, string2);
   if(final > 0){
      printf(" string1 is greater than string2");
   }
   else if(final < 0){
      printf("string1 is less than string2");
   }
   else{
      printf("string1 and string2 are equal");
   }
   return 0;
}

出力

上記のプログラムを実行すると、次の結果が得られます-

enter string1:
Tutorails Point
enter string2:
Point
string1 is greater than string2

  1. C言語のstrcmp()関数とは何ですか?

    Cライブラリ関数intstrcmp(const char * str1、const char * str2) str1が指す文字列を比較します str2が指す文字列へ 。 文字の配列は文字列と呼ばれます。 宣言 以下は配列の宣言です- char stringname [size]; 例-charstring[50];長さ50文字の文字列 初期化 単一文字定数の使用- char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,&ls

  2. C言語のstrcpy()関数とは何ですか?

    Cライブラリ関数char* strcpy(char * dest、const char * src) srcが指す文字列をコピーします 宛先へ 。 文字の配列は文字列と呼ばれます。 宣言 以下は配列の宣言です char stringname [size]; 例-charstring[50];長さ50文字の文字列 初期化 単一文字定数の使用- char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}