DefWindowProc 함수인데 기본적인 윈도우 메세지 처리 함수입니다. DefWindowProc() LRESULT DefWindowProc( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam );
WndProc은 메시지가 입력 되면 윈도우즈에 의해 호출되어 메시지를 처리한다 운영체제에 의해 호출되는 함수를 콜백(CallBack) 함수라고 한다. LRESULT CALLBACK WndProc(HWND hWnd, UINT mesg, WPARAM wParam, LPARAM lParam) LRESULT : 32비트 변수입니다. CALLBACK : 콜백함수라는 의미입니다. hWnd : 윈도우 핸들이다. meag : 어떤 종류의 메시지인가를 나타낸다. 가장 중요한 값이다. wParam : 32bit 값을 갖는 데이…
typedef HRESULT (WINAPI *REMOVECONTROLBYNAME) ( LPCTSTR lpszFile, LPCTSTR lpszCLSID, LPCTSTR lpszTypeLibID, BOOL bForceRemove, DWORD dwIsDistUnit ); int _tmain(int argc, _TCHAR* argv[]) { HMODULE hMod; REMOVECONTROLBYNAME pfn = NULL; hMod = LoadLibrary("OCCACHE.DLL"); if (hMod == NU…
typedef 를 사용하는 이유 자주 사용하는 형(type)을 편리하고 쉽게 사용하기 위하여 별칭을 부여한다. 복잡한 형태을 간단히 표현하여 사용할수 있어서 좋다. 일반적인 사용법 #include<stdio.h> typedef char inch; int main() { inch ch='A'; printf("문자을 출력합니다. : %c\n",ch); } 구조체에서 사용법 struct A{ ... }sa; 위와 같을때 typedef struc…
외부 변수 ( extern ) 외부변수는 함수의 밖에서 정의한다. 외부변수는 하나의 소스 화일을 넘어서 여러개의 프로그램 단위로부터도 참조가 가능하다 외부변수 정의 int z; 또는 extern int z; 와 같이 정의한다. name1.c int i=10; name2.c int z=20; name3.c #include<stdio.h> extern int i; extern int z; main() { printf(" %d %d&…
조건부 컴파일 지시자는 지정한 조건의 진위 여부에 따라 코드의 일정 부분을 컴파일할 것인지 아닌지를 지정한다. #if -> 조건이 참인 경우 컴파일 한다. #endif -> 해당 if 블록의 끝을 알린다. (반드시 적어야된다.) #else -> 위의 if 절이 거짓인 경우 컴파일 한다. #elif -> 위의 if 절이 거짓이고 해당 elif 다음 조건이 참인 경우 컴파일한다. #ifdef -> 뒤쪽 상수가 정의 되어져 있으면 컴파일한다.…
한개의 함수포인터로 두가지 이상일을 하고자 할때 사용한다. 함수 포인터는 각각의 함수를 호출하는것이 아니라 함수의 주소를 포인터로 가르켜 호출하는 방식이다. 리턴형 (*함수포인터명)([인수, ...]); #include<stdio.h> int getadd(int a, int b); // 더하기 int getsub(int a, int b); // 빼기 main() { int (*pas)(int,int); pas = getadd; p…
#define : 기호화된 상수 #define 의 장점은 속도가 빠르다 또한 자료형에 독립적이다. 단점은 구현이 어렵다 길이가 길어질수록 느려진다. define 는 선행처리기에서 처리한다 그러므로 컴파일이 에러가 생겨도 알수가 없다. #define 의로 상수화 .. #include<stdio.h> #define ONE 1 //<-------------- 상수화 main() { printf("정수 : %d \n ",ONE); }; #define ONE 1 …
난수 ( rand,srand ) 헤더파일에 #include<stdlib.h> 포함 하고 있어야 된다. 실행할때마다 값이 다르게 나오게 한다. #include<stdio.h> #include<stdlib.h> // srand() 와 rand() 를 위하여 .. #include<time.h> // time() 을 위하여 .. main() { int i,Xrand; srand(time(NULL)); // 시간으로 초기화 .. for(…