C言語で2つの文字列を比較する方法
ページ名:C言語で2つの文字列を比較する方法
文字列の長さを比較することは、C言語プログラミングでは一般的な関数である。これはデータの並べ替えに非常に便利である。文字列の比較には特別な関数が必要です。!=や==は使わないでください。
1
C言語で文字列を比較できる関数は2つあり、どちらも
ライブラリに含まれています。-
strcmp() - この関数は2つの文字列を比較し、文字数の比較差を返します。
-
strncmp() - strcmp()と同じですが、最初のn文字を比較します。オーバーフローによるクラッシュを防ぐことができるため、より安全であると考えられている。
2
必要なライブラリを使ってプログラムを開始する。
との両方のライブラリと、特定のプログラムに必要なその他のライブラリが必要です。
3
.int関数を開始する。この関数は2つの文字列の長さを比較する整数を返すので、この関数を学ぶにはこれが一番簡単な方法です。
これは、2つの文字列の長さを比較する整数を返すからです。 #include #include int main () { }.
4
比較したい2つの文字列を定義する。この例では、定義済みの2つの文字列を比較する。また、戻り値を整数として定義します。
#include int main () { char *str1 = "apple"; char *str2 = "orange"; int ret; }.
5
比較関数を追加する。つの文字列が定義できたので、比較関数を追加します。strncmp()を使用するので、測定する文字数が関数内で設定されていることを確認する必要がある。
#include int main () { char *str1 = "apple"; char *str2 = "orange"; int ret; ret = strncmp(str1, str2, 6); /*これで2つの文字列が6文字以内で比較される */ }.
6
比較を実行するには、.If...Elseステートメントを使用します。strncmp()は、文字列の長さが同じ場合は0を返し、str1の方が大きい場合は正の数を、str2の方が大きい場合は負の数を返します。
#include int main () { char *str1 = "apple"; char *str2 = "orange"; int ret; ret = strncmp(str1, str2, 6); if(ret > 0) { printf("str1の方が長い"); } else if(ret < 0) { printf("str2の方が長い"); } else { printf("2つの文字列は等しい"); } return(0); }.
この記事は、CC BY-NC-SAの下で公開されている " How to Compare Two Strings in C Programming " を改変して作成しました。特に断りのない限り、CC BY-NC-SAで利用可能です。
シェアボタン: このページをSNSに投稿するのに便利です。
コメント
最新を表示する
NG表示方式
NGID一覧