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

C / C ++のstrcmp()


関数strcmp()は組み込みのライブラリ関数であり、「string.h」ヘッダーファイルで宣言されています。この関数は、文字列引数を比較するために使用されます。文字列を辞書式に比較します。つまり、両方の文字列を文字ごとに比較します。両方の文字列の文字が等しくなるか、NULL文字が見つかるまで、文字列の最初の文字の比較を開始します。

両方の文字列の最初の文字が等しい場合は、2番目の文字をチェックします。このプロセスは、NULL文字が見つかるか、両方の文字が等しくなくなるまで続行されます。

C言語でのstrcmp()の構文は次のとおりです。

int strcmp(const char *leftStr, const char *rightStr );

この関数は、比較に基づいて次の3つの異なる値を返します。

1.Zero(0)- 両方の文字列が同一の場合はゼロを返します。すべての文字は両方の文字列で同じです。

これは、C言語で両方の文字列が等しい場合のstrcmp()の例です。

#include<stdio.h>
#include<string.h>
int main() {
   char str1[] = "Tom!";
   char str2[] = "Tom!";
   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 equal
Value returned by strcmp() is: 0

2.ゼロより大きい(> 0)- 左の文字列の一致する文字が右の文字列の文字よりも大きいASCII値を持っている場合、ゼロより大きい値を返します。

これは、C言語でゼロより大きい値を返すstrcmp()の例です。

#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

3.ゼロ未満(<0)- 左の文字列の一致する文字のASCII値が右の文字列の文字よりも小さい場合、ゼロ未満の値を返します。

これがC言語でのstrcmp()の例です

#include<stdio.h>
#include<string.h>
int main() {
   char leftStr[] = "Hello World!";
   char rightStr[] = "hello World!";
   int result = strcmp(leftStr, rightStr);
   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

  1. C /C++での文字列から数値への変換

    このチュートリアルでは、C /C++で文字列を数値に変換する方法を理解するためのプログラムについて説明します。 C / C ++には、文字列を数値に変換する2つの方法があります。 例 sscanf()の使用 #include<stdio.h> int main(){    const char *str = "12345";    int x;    sscanf(str, "%d", &x);    printf("\nThe value

  2. C / C ++のAAツリー?

    コンピュータサイエンスのAAツリーは、順序付けられたデータを効率的に保存および取得するために実装されたバランスの取れたツリーの形式として定義されます。 AAツリーは、エントリの効率的な追加と削除をサポートするバイナリ検索ツリーの形式である赤黒ツリーのバリエーションとして扱われます。赤黒木とは対照的に、AAツリーの赤いノードは、左のサブチャイルドではなく、右のサブチャイルドとしてのみ追加できます。この操作の結果、2-3-4ツリーではなく2-3ツリーのシミュレーションが行われるため、メンテナンス操作が簡素化されます。赤黒木のメンテナンスアルゴリズムでは、ツリーのバランスを適切にとるために、7つの異