
いつもお世話になっております。
いまいち、分からなくて質問しました。
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の書式制御文字列について教えてください
C言語・C++・C#
-
DWORDの実際の型は何でしょうか
C言語・C++・C#
-
charからLPTSTRへの変換方法
C言語・C++・C#
-
-
4
CString から LPCTSTRの型に変換
C言語・C++・C#
-
5
wsprintf( ポインタ , %d" , "123" );"
C言語・C++・C#
-
6
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
7
wsprintfで浮動小数を扱うには?
C言語・C++・C#
-
8
画面を強制的に再描画させる方法
C言語・C++・C#
-
9
CString型の文字列連結について
C言語・C++・C#
-
10
<unistd.h>をVisualStudioでつかえるようにする
C言語・C++・C#
-
11
LPCWSTRとchar
C言語・C++・C#
-
12
LPSTR型の初期化について
C言語・C++・C#
-
13
コンボボックスのドロップダウンリストが表示されない
C言語・C++・C#
-
14
wsprintfのエラーについて
C言語・C++・C#
-
15
【VC++6.0(MFC)】警告「LINK : warning LNK4075:」の対処方法を教えてください。
C言語・C++・C#
-
16
std::stringからLPCWSTR型への変換
C言語・C++・C#
-
17
ダイアログボックスで指定したサイズどおり表示されない
C言語・C++・C#
-
18
ダイアログ表示時にチェックボックスにチェックされている状態にするには?
C言語・C++・C#
-
19
インスタンスのハンドル
C言語・C++・C#
-
20
作成したウインドウのサイズを固定するには?
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ダブルクォーテーションを含む...
-
このプログラミング誰か教えて...
-
ArrayListの要素数の上限
-
日付や時刻の"01"を" 1"に変換...
-
javaのCSVデータ読込についてです
-
実行シェルからCOBOLへパラメー...
-
getParameterの値変更
-
暗号化文字列を英数字のみにしたい
-
結合した文字列をファイル名に...
-
Evaluate()に文字列の形式の数...
-
String str = "a\\\\b\\\\c";
-
BCD形式で時刻を!
-
オブジェクトの中のプロパティ...
-
yyyymmddからyyyy/mm/d...
-
ループ処理の際、最後だけ","を...
-
javaにおけるCSV出力時の文字コ...
-
ダブルクォーテーションのrepla...
-
大量のデータを読み込んで表示...
-
ORA-01858: 数値を指定する箇所...
-
変数を動的に利用するには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ダブルクォーテーションを含む...
-
DateTimePickerに値を入れたい...
-
ArrayListの要素数の上限
-
BCD形式で時刻を!
-
wsprintf関数の使い方について
-
excel vba 時間計算と条件分岐...
-
javaのCSVデータ読込についてです
-
PSQLExceptionが発生する
-
JSPでの計算結果表示
-
実行シェルからCOBOLへパラメー...
-
matchesを否定文として使う方法...
-
JSPでHashMap・配列の変数の値...
-
DOSバッチで変数の値を変数名に...
-
VB6,論理演算子Orの使い方がわ...
-
C言語の変数(LSB)の合わせ込...
-
hiddenの値を消したくない!
-
ResultSetの内部構造(Java)
-
Evaluate()に文字列の形式の数...
-
getParameterの値変更
-
Javaの問題なのですが、「3文字...
おすすめ情報