:: reverse dictionary ::
※ソースファイルについて
文字列を辞書式の順序で比較するには、strcmp 関数を使います。
#include <string.h>
char str[] = "C Program"; int cmpe, cmpm, cmpp; cmpe = strcmp(str, "C Program"); cmpm = strcmp(str, "Java Program"); cmpp = strcmp(str, "C PROGRAM");
cmpe は 0 、cmpm は -1 、cmpp は 1 になります。
ワイド文字列の場合は wcscmp 関数を使います。
#include <locale.h> #include <string.h>
wchar_t str[] = L"Cプログラム"; int cmpe, cmpm, cmpp; setlocale(LC_ALL, "ja"); /* ロケールを日本語に設定 */ cmpe = wcscmp(str, L"Cプログラム"); cmpm = wcscmp(str, L"Javaプログラム"); cmpp = wcscmp(str, L"C++プログラム");
cmpe は 0 、cmpm は -1 、cmpp は 1 になります。
int strcmp(const char *sa, const char *sb) int wcscmp(const wchar_t *sa, const wchar_t *sb)
文字列 sa と文字列 sb を辞書式の順序で比較します。
文字列 sa が文字列 sb と等しい場合は 0、文字列 sa が文字列 sb より小さい場合は -1 以下の値、文字列 sa が文字列 sb より大きい場合は 1 以上の値を返します。
sa … 比較する文字列
sb … 比較する文字列
・文字列 sa が文字列 sb と等しい … 0
・文字列 sa が文字列 sb より小さい( sa < sb ) … -1 以下(負)
・文字列 sa が文字列 sb より大きい( sa > sb ) … 1 以上(正)
Copyright (C) 2005-2007 Noto Watabe. All rights reserved.
e-mail:wmh@always-pg.com