 
                | 운영체제 | 모델 | char | short | int | long | 포인터 | 
| Windows | LLP64 | 1바이트 | 2바이트 | 4바이트 | 4바이트 | 8바이트 | 
| UNIX | LP64 | 1바이트 | 2바이트 | 4바이트 | 8바이트 | 8바이트 | 
| #include <stdio.h> int main() { int arr[10] = {0, }; int arrVal = (int)arr; printf("pointer : %d \n", arrVal); return 0; } | 
| WINDOWS 자료형 | 의미 | 정의 형태 | 
| BOOL | Boolean variable | typedef bool BOOL | 
| DWORD | 32-bit unsigned integer | typedef unsigned long DWORD; | 
| INT | 32-bit signed integer | typedef int INT | 
| LONG | 32-bit signed integer | typedef long LONG | 
| UINT | Unsigned INT | typedef unsigned int UINT | 
| ULONG | Unsigned LONG | typedef unsigned long ULONG | 
| WINDOWS 자료형 | 의미 | 정의 형태 | 
| PINT | INT에 대한 포인터 | typedef int* PINT | 
| PLONG | LONG에 대한 포인터 | typedef LONG* PLONG | 
| PUINT | UINT에 대한 포인터 | typedef unsigned int* PUINT | 
| PULONG | ULONG에 대한 포인터 | typedef ULONG* PULONG | 
| #if defined(_WIN64) typedef __int64 LONG_PTR; typedef unsigned __int64 ULONG_PTR; typedef __int 64 INT_PTR; typedef unsigned __int64 UINT_PTR; #else typedef long LONG_PTR; typedef unsigned long ULONG_PTR; typedef int INT_PTR; typedef unsigned int UINT_PTR; #endif | 
| #include <stdio.h> #include <tchar.h> #include <windows.h> UINT_PTR CalDistance(UINT_PTR a, UINT_PTR b) { return a-b; } int _tmain() { INT32 val1 = 10; INT32 val2 = 20; _tprintf ( _T("distance : %d \n"), CalDistance((UINT_PTR)&val1, (UINT_PTR)&val2) ); return 0; } |