K.Maebashi's BBS 投稿フォーム
ハンドル名
件名
Link
>>ここが解せないんですよ。たとえば >>int >>dvm_mbstowcs_len(const char *src) >>{ >> return mbstowcs(NULL, src, 0); >>} >>で良い筈なので、繰り返しは必要ないと思うんですが... > >やったのがかなり昔のことなのでもはや覚えていないのですが、 >考えられる原因としては、以下のようなものが考えられます。 > >(1)Windowsでは、mbsrtowcs()だけでなくてmbstowcs()も動かなかった。 > →当時はXPだったのですが、今Vistaで試したらあっさり両方動いてしまったので > 検証不能です… > >(2)mbstowcs()なら動いたが、rがついていないのでよろしくない関数だと > 思い込んでいた。 > →この使い方なら、mbstowcs()側に状態を覚えさせないので、問題ないと > 思いますが。 > >(3)mbstowcs()の第1引数にNULLを渡すと変換を行わない、という仕様を知らなかった。 > →実のところ現在は完璧に忘れていました。当時はちゃんとマニュアル読んだので、 > 知らなかったということはないと思うのですが… > >
spamよけのため、ここに「ほげぴよ」と入力してください。
削除パスワード :
クリック!