ただ単純にC++でmecabでパースした文字列を表示したいのですが、文字化けします。なんでなんで?Perlに関してはえらそーに語る事もありますが、C++初心者っす・・・誰か教えてください
#include
#include
using std::cout;
using std::endl;
using std::hex;
int
main(int argc, char **argv)
{
char input[1024] = "もももすももももものうち";
char *args[] = { "", "-Owakati" };
const char *parsed;
MeCab::Tagger *t = MeCab::createTagger(2, args);
parsed = t->parse(input, strlen(input));
cout << "original input = " << input <<< "parsed string = " << parsed << strlen(input); i++) {
cout << "input[" << i << "] = " << hex << (unsigned int) input[i] << endl;
cout << "parsed[" << i << "] = " << hex << (unsigned int) parsed[i] << endl;
}
delete t;
return 0;
}
最初のoriginal inputとparsed stringのところでcoutが化けるのでバイト単位でcoutしてみたんだけど、これだとparsedのほうがほとんどのところで最後の1バイトが抜けてる感じ。何が間違ってるんでしょうか・・・
コメント