>> C言語関数一覧トップに戻る

C言語 strcmp 使い方

今回はC言語のstrcmp関数について説明します。

strcmp関数は文字列同士を比較してその結果を返す関数です。

■書式
#include <string.h>
int strcmp(const char *s1, const char *s2);

二つの引数には比較したい文字列をそれぞれ指定します。
戻り値は、文字コード順で、

s1 > s2 で正の値
s1 < s2 で負の値
s1 = s2で0

を返します。
基本的にこの関数は完全に文字が一致しているかどうかを調べるときに多用するので、
「戻り値が0ならば比較した二つの文字列は完全に一致している」と覚えておけば良いです。
■サンプルコード
#include <string.h>
#include <stdio.h>

int main(void)
{

	char test1[10] = "abc";
	char test2[10] = "abc";

	char test3[10] = "abc";
	char test4[10] = "def";

	//test1とtest2の文字列を比較
	if(strcmp(test1,test2)==0){
		puts("test1とtest2の文字列は一致しています。");
	}else{
		puts("test1とtest2の文字列は一致していません。");
	}


	//test3とtest4の文字列を比較
	if(strcmp(test3,test4)==0){
		puts("test3とtest4の文字列は一致しています。");
	}else{
		puts("test3とtest4の文字列は一致していません。");
	}

	return 0;
}
■実行結果
test1とtest2の文字列は一致しています。
test3とtest4の文字列は一致していません。


それぞれの文字列を比較し、0が返れば一致、0でなければ一致していないと表示しています。

>> 【C言語 strcpy 使い方】に進む
>> C言語関数一覧トップに戻る