【初心者歓迎】C/C++室 Ver.44【環境依存OK】at TECH【初心者歓迎】C/C++室 Ver.44【環境依存OK】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト3:デフォルトの名無しさん 07/11/03 00:40:45 UTF16LEの文字はは可変長のはずですが、下のようにして読み込めます これだと1文字2バイトってことだと思うのですか゛ while(!fp.eof()){ fp.read(( char * ) &(wbuf[n]), 4096 ); n+=fp.gcount()/2;} wcout<<wbuf<<endl; 4:デフォルトの名無しさん 07/11/03 00:43:20 1文字4バイトの文字だったら、アドレスが2つ進んでしまい失敗でないですか? 5:デフォルトの名無しさん 07/11/03 00:47:43 wbuf[n]をゼロクリアしておき、読み込んだであろう最大の番号から逆に進めて0に無くなるところにもどせば安全かなあ 6:デフォルトの名無しさん 07/11/03 01:23:28 おまえはいったい何をいっているんだ。 wbufの型がUTF-16なら、1文字4バイトでアドレスが2つ進むのは問題無いんでねーの。 7:デフォルトの名無しさん 07/11/03 01:40:14 wstringは、2バイトでも4バイトでも1文字だぞ 8:デフォルトの名無しさん 07/11/03 04:12:41 string の+=は鈍いらしいけど、strcatや自前関数と比べてみるよ 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch