본문 바로가기

2012/10

에러 핸들링(Error Handling) window함수들은 반환형을 가지고 있다. 반환타입은 대개 함수의 성공과 실패를 나타내는 데 쓰이며, 각 자료형의 의미는 다음과 같다. 자료형 실패했을 때의 값 VOID 이 함수는 절대 실패 하지 않는다. BOOL 성공시 0이 아닌 값, 실패하면 0 (주의 : 성공시 0이 아닌 값이기에 TRUE(1)과 비교하지 말자) HANDLE 성공시 유효한 핸들, 실패하면 0(NULL) or (INVALID_HANDLE_VALUE) 실패의 경우가 나뉘므로 SDK를 참조하여 프로그래밍을 하자. PVOID 성공시 데이터를 저장하고 있는 메모리 주소를 반환, 실패시 NULL반환 LONG/DWORD HANDLE과 마찬가지로 실패의 경우가 각 함수마다 다르므로 SDK를 참조하여 프로그래밍을 하자. 함수가 실패하는 경우에는 전.. 더보기
[MFC] Console 생성하기 BreakPoint로 디버그가 편하긴 하지만 동작하는 화면을 보면서 해당 수치를 확인 해야할 경우가 많이 생깁니다. 콘솔창을 띄워서 printf를 쓰면 상당히 편하죠.. 적당한 위치에 다음과 같이 선언해 줍니다. 윈도우보다 먼저 실행되어야 한다고 하는 얘기가 있는데 어떤 경우인지는 잘 모르겠습니다. 유니코드의 경우 #pragma comment(linker, "/entry:wWinMainCRTStartup /subsystem:console") 멀티바이트의 경우 #pragma comment(linker, "/entry:WinMainCRTStartup /subsystem:console") 저같은 경우 최종적으로 이렇게 씁니다. stdafx.h 헤더에 선언하고 디버그 일때만 작동하도록 선언합니다. #ifdef .. 더보기
몸에 좋은 물 1. 물은 반드시 생수를 마셔야 합니다. 생수 이외에는 칼로리를 함유하고 있어 비만의 요인을 제공합니다. 차종류나 커피, 음료수는 피하는 것이 좋습니다. 2. 너무 차갑거나 뜨거운 물은 흡수가 느려서 미지근한 물을 마셔야 합니다. 3. 몸속의 노폐물을 배출하고 신진대사에 도움을 주기 위해 기상하자마자 물을 마셔야 합니다. 4. 하루 약 2리터의 물을 마시되 한 번에 많이 마시지 말고 여러 번 나누어 마셔야 합니다. 5. 식사 도중이나 식사가 끝나자마자 마시면 소화에 안 좋으며 인슐린을 자극해 체지방을 불릴 수 있기 때문에 피하는 게 좋습니다. 6. 가벼운 운동과 함께 물을 마시면 더 좋습니다. 하루 30분 정도 걸으면서 마시거나 가벼운 운동 후 물을 마시면 흡수가 잘되고 다이어트 효과가 더욱 좋아집니다... 더보기
Multiple Stack Multiple Stack : 배열스택은 처음에 크기가 고정되어 있다는 단점이 있다. 적게 잡을경우 데이터가 많이 몰려 스택에 데이터를 넣지 못하는 문제가 있을 수 있고, 이를 고려해 스택의 사이즈를 최대로 잡아 버리면, 쓰이지 않는 메모리 공간이 많이 낭비가 된다는 점이다. Multiple Stack은 이러한 배열스택의 문제점을 조금이나마 줄이고자 하는데 있으며, 기본적인 개념은 스택과 동일하다. Multiple Stack에서 추가된 개념은 각 스택을 구분하는 경계선(Boundary)이다. Boundary는 Stack의 개수 +1이며 Boundary[0]< Stack[0] 더보기
Stack 1. Stack :스택은 자료를 보관하는 방법을 기술한 자료구조 중 하나의 방법이다. 제한적으로 접근할 수있는 나열 구조로서, 그 접근 방법은 언제나 목록의 끝(top)에서만 일어난다. 스택의 기본적인 연산은 한쪽 끝에 자료를 집어넣는 Push와, 반대로 데이터를 꺼내는 Pop이 있으며, 자료의 입력과 출력의 형태가 최근에 넣은값(나중에 넣은값)이 먼저 나오는 구조여서 LIFO(Last In First Out)라고도 불리운다. 더불어, 스택에 자료가 비었는지 판단하는 isEmpty()와 가득 차있는지 판단하는 isFull() 있다. Keyword Description top Stack의 끝을 나타내며, 자료의 입력과 출력이 일어나는 곳이다. push() Stack에 새로운 자료를 넣는 함수(top을 증가.. 더보기