ページ 11

数字の出力

Posted: 2019年1月22日(火) 00:43
by じゅぴ
学校の課題でダブルバッファを使ったコンソールで動くゲームを作っています
変数を出力したくなり作った関数を使うと出力に失敗しました。
少し改造し数字を出力できるようにしたら今度はその関数では一桁しか出力できないことがわかりました
二桁以上を出力する方法何かないですか?

環境はwindows10
visual sttudio 2017です

以下改造して一桁出せるようになったものです

コード:


void PrintNumberToScreen(int  number)
{
	DWORD wnum;
	number += 48;
	WriteConsole(DisplayBuffer[DrawDisplayNumber], &number, sizeof(number), &wnum, NULL);
	//DisplayBufferはダブルバッファ用の配列でDrawDisplayNumberは書き込むバッファです
}

Re: 数字の出力

Posted: 2019年1月22日(火) 00:44
by じゅぴ
すいません visual studio 2017です

Re: 数字の出力

Posted: 2019年1月22日(火) 01:34
by じゅぴ
snprintfを使い解決しました

コード:

void PrintNumberToScreen(int  number)
{
	char buff[10];
	snprintf(buff, sizeof(buff), "%d", number);//int型からchar型へ変換する
	DWORD wnum;
	WriteConsole(DisplayBuffer[DrawDisplayNumber], buff, sizeof(int), &wnum, NULL);
}