マクロ(VC++)



定義名 ビット数 内容
BOOL int 32 ブール値
BYTE unsigned char 8 8ビットの符号なし整数
WORD unsigned short 16 16ビット符号なし整数(Windows3.1ではWORDとUNITは同じ)
DWORD unsigned long 32 32ビットの符号なし整数
DWORDLONG unsigned __int64 64
CHAR char 8
UCHAR unsigned char 8
SHORT short 16
USHORT unsigned short 16
INT int 32
UINT unsigned int 32 32ビット環境(Win32)では32ビット符号なし整数
LONG long 32 32ビット符号付き整数
ULONG unsigned long 32
LONGLONG __int64 64
ULONGLONG unsigned __int64 64
FLOAT float 32
DOUBLE double 64
HANDLE void* 32
WPARAM UINT -- ウィンドウプロシージャ、コールバック関数への引数として渡される値
LPARAM LONG -- ウィンドウプロシージャ、コールバック関数の引数として渡される32ビット値
LRESULT LONG -- ウィンドウプロシージャ、コールバック関数から返される32ビット値
COLORREF DWORD -- カラー値として使われる32ビット値
LPSTR CHAR* -- 文字列への32ビットポインタ
LPCSTR const CHAR* -- 定数文字列への32ビットポインタ
WCHAR unsigned short -- Unicode文字
LPWSTR WCHAR* --
LPCWSTR const WCHAR* --
TCHAR char or unsigned short ※1 --
LPTSTR TCHAR* -- UnicodeとDBCSへの移植性が高い文字列への32ビットポインタ
LPCTSTR const TCHAR* -- UnicodeとDBCSへの移植性が高い定数文字列への32ビットポインタ
OLECHAR unsigned short --
LPCOLESTR const OLECHAR* --
LPVOID -- -- 型指定のない32ビットポインタ
LPCRECT -- -- 定数の(変更不可能な)RECT構造体への32ビットポインタ

文字列型

TCHAR型は、下記のようにUNICODEが定義されているかどうかで、型が決定される。

#ifdef UNICODE
typedef WCHAR TCHAR; 
#else
typedef char TCHAR; 
#endif

ユニコード マルチバイト
TCHAR WCHAR CHAR(char)
LPTSTR WCHAR* CHAR*(char*)
LPCTSTR const WCHAR* const CHAR*(const char*)
_T("文字列"), _TEXT("文字列") L"文字列" "文字列"
参考)
LPCSTR (Long Pointer to Constant null-terminated STRing)
LPCWSTR (Long Pointer to Constant null-terminated Wide STRing)
LPCTSTR (Long Pointer to Constant null-terminated Template STRing)

例)
// 共通
TCHAR* pStr = _T("文字列"); 
const TCHAR* pStr = "文字列";
LPCTSTR	pStr = "文字列";

// ユニコード
WCHAR* pStr = L"文字列"; 
const WCHAR* pStr = "文字列";
LPCWSTR	pStr = "文字列";

// マルチバイト
char*  pStr = "文字列";
const CHAR* pStr = "文字列";
LPCSTR pStr = "文字列";
TOP


一般

定義名
MAX_PATH 260
NULL 0
FALSE 0
TRUE 1
CALLBACK __stdcall
WINAPI __stdcall
WINAPIV __cdecl
APIENTRY WINAPI
APIPRIVATE __stdcall
PASCAL __stdcall

メッセージ

定義名
WM_USER 0x0400
WM_APP 0x8000

メッセージの定義範囲

Min Max 意味
0x0000 0x03FF(WM_USER-1) システム用メッセージ。
0x0400(WM_USER) 0x7FFF 自ウィンドウ用メッセージ。
0x8000(WM_APP) 0xBFFF 自アプリ用メッセージ。
0xC000 0xFFFF アプリ間用メッセージ。
上記範囲以外(0x1000~) 将来の予約メッセージ。
TOP

関数


_countof()

  • 静的に割り当てられた配列の要素数を返す。

TRACE()

プログラムからのメッセージをデバッガの [出力] ウィンドウに表示する。
例)
int x = 1;
int y = 16;
float z = 32.0;
TRACE( "This is a TRACE statement\n" );
TRACE( "The value of x is %d\n", x );
TRACE( "x = %d and y = %d\n", x, y );
TRACE( "x = %d and y = %x and z = %f\n", x, y, z );
実際デバックする場合、日本語も問題なく使用できるので、OutputDebugString()の方がいい。参照
TOP

コメント

名前:
コメント:
TOP

タグ:

ログ出力
最終更新:2010年11月08日 18:38
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。