Programming 12

[삽잡이] 0, NULL, \0?

안녕하세요 삽잡이입니다.이번 시간에는 NULL과 0의 차이점에 대해서 알아보려고 합니다. 저와 같은 개발 공부에 관심을 가지고 있는 햇병아리(?)들은 흔히들char* s = 0; 처럼 변수를 초기화 하곤 합니다.해당 코드는 '문자열을 담는 변수 s의 주소는 0이다.' 라고 말할 수 있습니다.그렇다면, char* s = NULL; 과 char* s = 0; 은 과연 어떤 차이가 있을까요?정답부터 말씀드리자면, 같은 기능을 담당하고 있습니다.흠... 0과 NULL은 같다는 것처럼 들리는데요? 우선 0은 정수입니다. 맞습니다. 숫자입니다.NULL은 포인터입니다. 사실 주소는 주소인데 0 주소라고 정의할 수 있습니다.사실 NULL의 원형은 (void *) 형식으로 정의되어 있다는 말입니다. 따라서, 주소가 없다..

#002_WIndow_API_WinMain, WndProc에 대해서 (1)

안녕하세요 삽잡이 입니다.이번 시간에는 지난 시간에 이어서 WinMain함수와 WndProc함수에 대해서 조금 더 알아보도록 하겠습니다. 우선, 지난 시간에 배운 내용을 간략하게 설명하자면...WinProc 함수는 프로시저이고 , 메시지를 처리하는 함수를 뜩합니다.메인 함수인 WinMain함수는 크게 세가지 영역으로 나뉠 수 있습니다. 첫번째로, 윈도우의 클래스를 등록하는 부분이 있습니다.윈도우 클래스를 등록하기 위해서는 구조체를 사용해야합니다. 즉, 윈도우 클래스라는 구조체를 설정한 다음 해당 윈도우 클래스를 등록하는 것입니다.윈도우 구조체를 잠시 살펴보도록 하기 전, MSDN의 도움을 청해보도록 하겠습니다. 자... 여러분이 지금 살펴보시는 구조체가 바로 WNDCLASS라고 부르며,해당 클래스를 등록..