ここから本文です

C言語+WIN32APIで画面上に小数を出す方法はありますか?

双葉さん

2010/9/2902:30:26

C言語+WIN32APIで画面上に小数を出す方法はありますか?

今までは、
int A=3;
char out[64];
wsprintf(out,"Aは%dです",A);
という風に文字と数字を入れて来たのですが、

float F=0.5;
char out[64];
wsprintf(out,"Fは%fです",F);
という風にしても数字が出ません。

調べるとwsprintfの書式指定に%fはありませんと書いてありましたが、
ではどうすれば小数を文字と合わせてchar配列に格納できるのでしょうか?
double、floatの書式指定を教えて頂ければ幸いです。
また、wsprintf関数にはこだわっていませんので
もし他に代わるような関数があれば教えて頂きたいです。
ちなみに画面出力はTextOut関数を使っています。

補足>wsprintf の代わりに、printf を使ってください。
コンソール上ではなくウィンドウ上に描画したいのでprintfは使えません><

閲覧数:
3,094
回答数:
4
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

tto********さん

2010/9/2922:10:58

他の方の回答の sprintf() でも良いんですが、wsprintf() からの置き換えとしては _stprintf_s() が最も適切です。
ご相談の「char out[64];」のような固定長配列にセットする分にはまったく同じ書式で書けますし、しかも安全です。

この回答は投票によってベストアンサーに選ばれました!

ベストアンサー以外の回答

1〜3件/3件中

並び替え:回答日時の
新しい順
|古い順

久遠人さん

2010/9/2907:06:15

wsprintfのwを削除する。
double、floatも同じ。

佐々木さん

2010/9/2907:04:25

sprintfで文字列を作り
それをTextOutで画面上に表示して下さい。

abb********さん

2010/9/2902:53:30

wsprintf の代わりに、printf を使ってください。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる