文字の出力・表示 – プログラミング – Home

通知
すべてクリア

[解決済] 文字の出力・表示


けい
 けい
(@けい)
ゲスト
結合: 22年前
投稿: 1
Topic starter  

はじめまして、数日前からVC++をやり始めたけいといいます。
よろしくお願いします。

さて、質問の内容ですが、文字の出力についてです。
私は、とある計算結果(double型)を出力したいのです。
現段階で、文字をタイトルバーに表示するのにSetWindowTextを使用しています。
ですがこれはconst char *型なので、型変換を行わなければなりません。

しかし、double型→char型の変換を行うとデータが減ってしまいます。
コレを避けたいのですが、なにか方法はありませんか?
ご教授ください。


引用未解決
トピックタグ
PAI
 PAI
(@PAI)
ゲスト
結合: 23年前
投稿: 359
 

浮動小数点をどう表示したいかにもよるし、

CString::Format()で取り敢えずはいいのでは?

CString tmp;


返信引用
PAI
 PAI
(@PAI)
ゲスト
結合: 23年前
投稿: 359
 

失礼、とりあえずやりかただけいってしまうと、

double value = 1.2345;
CString tmp;
tmp.Format( %f, value );

SetWindowText((LPCSTR)tmp);

とか、

んで、
>double型→char型の変換を行うとデータが減ってしまいます。

これはちょっと理解が足りないかと、
C/C++でcharは文字1文字分で文字列はcharの配列なので、
『文字列にする』には charへの変換ではいけません。

『const char* 型』が示しているのは、その文字配列の先頭アドレスです。


返信引用
みけ
 みけ
(@みけ)
ゲスト
結合: 22年前
投稿: 2
 

PAIさん>
早速のお返事ありがとうございます。すいません、レス遅くなりました。
おっしゃられたやり方にて、解決できました。ありがとうございました。

>>double型→char型の変換を行うとデータが減ってしまいます。
>
>これはちょっと理解が足りないかと、
>C/C++でcharは文字1文字分で文字列はcharの配列なので、
>『文字列にする』には charへの変換ではいけません。
>
>『const char* 型』が示しているのは、その文字配列の先頭アドレスです。

確かにそうですね。勉強不足でした。


返信引用
けい
 けい
(@けい)
ゲスト
結合: 22年前
投稿: 15
 

名前間違えましたσ(^_^;)アセアセ...


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました