[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 05/09 15:01 / Filesize : 201 KB / Number-of Response : 898
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

D言語 Part12



614 名前:デフォルトの名無しさん mailto:sage [2007/03/15(木) 08:23:34 ]
>>610
んー。同じことだと思いますよ。

結局システムレベルの標準入出力をラップしてくれ、ちゃんと
変換してくれってことでしょう。

同様に、Dランタイムが特定のシステムコールなりAPIなりを
呼んでいる箇所では、ちゃんとエンコーディング変換を一貫して
行わないと、ユーザ側につけがまわることになります。

ユーザ側でtoMBSz()をかませば良い、と思われるかもしれませんが、現状の
toMBSz()は(機能的にはWin32に限らず必要なものであるにも関わらず)
Win32ベッタリの仕様であり、コードの移植性を保持するのが困難に
なりますし、いかにも「一時しのぎ」的で、今後のバージョンでは
それが不要になり、コードが新しいバージョンでは動かなくなる可能性も
大です。

char[]で受け取る関数にtoMBSz()で変換したホストエンコーディングの
バイト列を渡すことにも問題があります。char[]をUTF-8文字列と定めている
Dの仕様に反することですし、
例えばその関数の中で文字列を解析した上でシステムコールを呼んでいる
かも知れません。実際に文字列の中身を見ている関数に、
UTF-8以外のエンコーディングの文字列を与えることは、明らかな
問題を引き起こします。

ガタガタなコアライブラリの上に何かを積み上げようとしても、砂上の楼閣に
過ぎません。土台が駄目ではどうしようもないのです。






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<201KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef