ページ 11

E0167 パラメーターと互換性がありません。

Posted: 2018年12月19日(水) 15:55
by itoki
https://dixq.net/g/03.html
こちらのサイトを参考にしてプログラムの学習をしていたのですが画像を表示させようとしたのですが画像の場所の下に赤の波線が引かれ「型"const char*"の引数は型”const TCHAR*”のパラメーターと互換性がありません」とエラーに表示されます。原因がわかる方教えてください。

コード:

#include "DxLib.h"

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
	ChangeWindowMode(TRUE);
	if (DxLib_Init() == -1) return -1;


	LoadGraphScreen(0, 0, "char.png", TRUE);


	WaitKey();
	DxLib_End();
	return 0;
}

Re: E0167 パラメーターと互換性がありません。

Posted: 2018年12月19日(水) 20:34
by かずま
原因は、文字セットが「UNICODE文字セットを使用する」になっているから。

ソリューションエクスプローラーで、プロジェクトを右クリックし、
プロパティを開いて、構成プロパティの全般で、プロジェクトの規定値の
文字セットを「マルチバイト文字セットを使用する」にしてください。

プロパティを変更しない場合は、ソースで、#undef UNICODE を
#include "DxLib.h" の前に挿入。

TCHAR は、UNICODE が define されていると WCHAR (wchar_t) になり、
UNICODE が define されていないと char になります。

Re: E0167 パラメーターと互換性がありません。

Posted: 2018年12月19日(水) 21:57
by みけCAT
文字列にTEXTマクロを使用してUNICODE/非UNICODE両対応にするのも良さそうですね。