はじめまして。
double型をCString型に変換する際に困っている事があります。
「1.20」と「1.25」を、Format("%1.2f", x)で型変換すると、
「1.20」と「1.25」となってしまいまうのですが、
「1.2」と「1.25」に変換するにはどうしたらよいのでしょうか?
宜しく御願いします。
%g を指定してみるのはどうでしょうか?
to Blueさん
ありがとうございました。
"%g"でうまくいきました。
すごく悩んでいたのに、こんなに簡単にできるんですね。
助かりました。本当にありがとう御座います。
細かいところですが。
%gでは、元の値をx.xxxxe±nnnという表記で表した時にnnnが5以上
なら、CString::Formatの結果が指数表記に変換されることに注意。
1000000.25 → 1e+6
1000000.2 → 1e+6
0.00000025 → 2e-7
0.0000002 → 2.5e-7
もちろん、そのような範囲の値を使わないなら問題ありません。
変換例を間違えました。
×
> 0.00000025 → 2e-7
> 0.0000002 → 2.5e-7
○
0.00000025 → 2.5e-7
0.0000002 → 2e-7
ツイート | ![]() |