文字コード

επιさんところ
http://blogs.wankuma.com/episteme/archive/2008/12/11/163370.aspx

BSDではwchar_tがEUCだったりSJISだったりできるんじゃないかと思います。

職業柄、大量のテキストをC/C++で捌くことが良くあるんですけど、ほとんどのデータはまだまだSJISだったりするわけです。それをWindowsだけでなくLinuxBSD上で裁こうとすると、互換性の低いMBCS周りの関数でえっちら処理するのもうざいし、こまめにleadbyteの判定をするのも面倒だしバグの元。

そこで、入力直後に無理やりwchar_tに変換したりすることがあります。これだと(特にLinux/BSDでは)1文字1コードが保証されているので、文字列操作部自体は簡潔に書けます。
このときに内部の文字コードが何になっても本質的には大差ないですけど、元がSJISならSJISのままwchar_tに持っていったほうが余計なテーブル引きがなくなる分だけ高速でしょうし、コード変換にからむトラブルも防げてよい感じです。

文字列リテラルの与え方に関しては相変わらず問題ですけど…。