いつもお世話になっております。
いまいち、分からなくて質問しました。
int hp=60;
としたとき、
TextOut(.............,hp,lstrlen(hp));
としようと思ってたんですけど、
文字がでないので、
wsprintf((LPWSTR)nowhp,"%d",hp);
としたら、エラーがでて実行できませんでした。
TextOut関数で、60とだしたいのですが、
その後の処理で値が変わってくるので
TextOut(......................,TEXT("60")..........)
ともできず、困っています。
要は
wsprintfに値を格納して
その後の処理で
hp-=10
としても、
wsprintfでnowhpに値を格納し
TextOutで50と表示されるようにしたいのです。
うまく説明できませんが、↑のようにする方法を
教えてください。
お願いします。
No.2ベストアンサー
- 回答日時:
なんか怪しげなキャストが見えますが……。
wsprintfは文字列を扱うWin32 APIなので,wsprintfAとwsprintfWがあります。
int WINAPI wsprintfA (char *, const char *, ...);
int WINAPI wsprintfW (wchar_t *, const wchar_t *, ...);
なので,wsprintfとして使う場合は,全てTCHAR系で統一する必要があります。
TCHAR nowhp[11];
wsprintf(nowhp, TEXT("%d"), hp);
ただし,
MSDN: wsprintf function (Windows)
http://msdn.microsoft.com/es-ar/library/ms647550
には,wsprintfは使うな,と書いてありますので,
TCHAR nowhp[11];
if (FAILED(StringCbPrintf(nowhp, sizeof(nowhp) / sizeof(nowhp[0]), TEXT("%d"), hp))
{
// 失敗時処理
}
のようにした方がよいでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語 3 2022/10/04 15:07
- C言語・C++・C# プログラミング実行後の表示される値を答えよ #include<stdio.h> void main( 7 2022/05/20 00:07
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 malloc関数を使ってください!お願いします! 最 1 2022/07/21 09:28
- C言語・C++・C# C 言語の Gauss Jordan 法について 2 2022/12/28 11:16
- C言語・C++・C# 3×3のラテン方陣をつくるプログラムを作成したのですが、(↓) #include <stdio.h> 5 2023/07/10 01:53
- 大学・短大 C言語線形リストの問題です 3 2022/12/22 00:45
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
- C言語・C++・C# (C言語)めちゃくちゃな値になってしまいます。 5 2022/08/13 11:55
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分 1 2022/07/19 17:03
このQ&Aを見た人はこんなQ&Aも見ています
-
賃貸で可能な古民家風レトロな部屋作りのコツ!改めて知る畳の高い機能性と魅力も紹介
畳の部屋を雰囲気のよい部屋に仕上げたい!賃貸住宅でもできる古民家風のレトロな部屋作りのコツを伺った。
-
wsprintf( ポインタ , %d" , "123" );"
C言語・C++・C#
-
DWORDの実際の型は何でしょうか
C言語・C++・C#
-
wsprintfで浮動小数を扱うには?
C言語・C++・C#
-
-
4
charからLPTSTRへの変換方法
C言語・C++・C#
-
5
CStringをwchar_tに変換したい
C言語・C++・C#
-
6
ボタンの表示の色、フォントを変更したい
C言語・C++・C#
-
7
#include <Windows.h>というヘッダファイルについて
C言語・C++・C#
-
8
画面を強制的に再描画させる方法
C言語・C++・C#
-
9
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
10
EDITコントロールで入力できる文字を制限するには?
C言語・C++・C#
-
11
0xffffとは?
C言語・C++・C#
-
12
コマンドプロンプトの「%1」と「%~1」の違いがわからない
その他(プログラミング・Web制作)
-
13
CString から LPCTSTRの型に変換
C言語・C++・C#
-
14
バッファとは何ですか
C言語・C++・C#
-
15
WaitForSingleObjectの使い方について
C言語・C++・C#
-
16
'int' から 'LPCSTR' に変換できません。
C言語・C++・C#
-
17
「fatal error C1189」を回避するには?
C言語・C++・C#
-
18
<unistd.h>をVisualStudioでつかえるようにする
C言語・C++・C#
-
19
LINK : fatal error LNK1104について
C言語・C++・C#
-
20
std::stringからLPCWSTR型への変換
C言語・C++・C#
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ダブルクォーテーションを含む...
-
C言語の変数(LSB)の合わせ込...
-
BCD形式で時刻を!
-
javaのCSVデータ読込についてです
-
hiddenの値を消したくない!
-
wsprintf関数の使い方について
-
直し方について教えて頂きたい...
-
javaの演算子の部分ですが 4行...
-
ArrayListの要素数の上限
-
char型での演算子
-
PSQLExceptionが発生する
-
VB6で固定長の文字列の長さを変...
-
String str = "a\\\\b\\\\c";
-
DateTimePickerに値を入れたい...
-
-1.#IND00を検知する方法
-
CString 数値チェック
-
<JFreeChart> 縦軸の値の間隔を...
-
JSPでの計算結果表示
-
リテラルの問題
-
JSPでHashMap・配列の変数の値...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ダブルクォーテーションを含む...
-
ArrayListの要素数の上限
-
DateTimePickerに値を入れたい...
-
wsprintf関数の使い方について
-
Stringクラスの変数の格納アド...
-
BCD形式で時刻を!
-
javaのCSVデータ読込についてです
-
このプログラミング誰か教えて...
-
Evaluate()に文字列の形式の数...
-
このプログラミング誰か教えて...
-
JSPでHashMap・配列の変数の値...
-
特定の文字列を複数抜き出した...
-
matchesを否定文として使う方法...
-
DOSバッチで変数の値を変数名に...
-
Javaの問題なのですが、「3文字...
-
excel vba 時間計算と条件分岐...
-
実行シェルからCOBOLへパラメー...
-
日付や時刻の"01"を" 1"に変換...
-
VB6,論理演算子Orの使い方がわ...
-
char型での演算子
おすすめ情報