1. ホーム
  2. c

[解決済み] 2つの文字配列を比較する方法 [重複]について

2022-02-11 02:13:24

質問

この2つの文字配列を比較して、同じものであることを確認するにはどうしたらよいでしょうか?

char test[10] = "idrinkcoke"
char test2[10] = "idrinknote"

を使おうと思っています。 for loop しかし、どこかで読んだのですが、そのようなことはできないようです。 test[i] == test2[i] をC言語で作成しました。

どなたか、これを助けていただけると本当にありがたいのですが。ありがとうございます。

どのように解決するのですか?

<ブロッククオート

が、C言語でtest[i] == test2[i]ができないとどこかで読みました。

そんな風に一文字ずつ比較するのは本当に苦痛でしょう。ここでは2つの文字配列(文字列)を比較するので strcmp の代わりに

if( strcmp(test, test2) == 0)
{
    printf("equal");
}

編集する

  • 文字配列を初期化する際に、サイズを指定する必要はありません。そのほうがよいでしょう。

    char test[] = "idrinkcoke";
    char test2[] = "idrinknote";

  • また strncmp - これは一般的により安全です(文字配列がたまたまNULL終端でない場合)。

    if(strncmp(test, test2, sizeof(test)) == 0)