10B-04

2017-12-01 (金) 10:45:24 (11d) | Topic path: Top / 授業 / C言語基礎 / 文字列 / 練習問題 / 10B-04
int eq(char s1[], char s2[]) {
  int i = 0;

  while (s1[i] == s2[i] && s1[i] != '\0') { i++; }

  if (s1[i] == s2[i]) {
    return 1;
  } else {
    return 0;
  }
}

先頭から順番に、文字が同じで、かつ、その文字がナル文字でない間、一文字つずつ調べていきます。

while文が終了するのは、文字が異なるか、または、ナル文字のときなので、文字が同じならば(その文字はナル文字で)文字列として同じであり、そうでないならば異なる文字列となります。

トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS