ページ 11

配列にひらがなを格納し、比較するにはどうしたらいいですか。

Posted: 2009年12月03日(木) 14:45
by
二つの文章の類似度を算出するというプログラムを作成しようとしています。
形態素解析としてMeCabを使用して文章を解析し、単語ごとを配列に格納し比較する予定です。

ひらがなを配列に格納するにはどうしたらよいでしょうか?

Re:配列にひらがなを格納し、比較するにはどうしたらいいですか。

Posted: 2009年12月03日(木) 15:55
by たかぎ
ひらがなをどう表現するかによります。
多バイト文字を使うのであれば...
const char *s1 = "あいうえお";
char s2[strlen(s)+1];
strcpy(s2, s1);
とでもすればよいでしょうし、ワイド文字を使うのであれば、
const wchar_t *s1 = L"あいうえお";
wchar_t s2[wcslen(s1)/sizeof(wchar_t)+1];
wcscpy(s2, s1);
のようにしてください。

元のデータが多バイト文字で、ワイド文字に変換するのであれば、
const char *s = "あいうえお";
size_t n = strlen(s);
wchar_t wcs[n+1];
mbstowcs(wcs, s, n);
とでもすればよいでしょう。
この場合、ロケールの設定をお忘れなく。