블로그 이미지
Every unexpected event is a path to learning for you. blueasa

카테고리

분류 전체보기 (2797)
Unity3D (853)
Programming (479)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (185)
협업 (61)
3DS Max (3)
Game (12)
Utility (68)
Etc (98)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (55)
Android (14)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday

//////////////////////////////////////////////////////////

//VC++의 출력창을 이용한 디버깅 수단1

#include <Windows.h>

//void main()...

OutputDebugString(msg);                                         //VC출력창에 문자가 출력 된다.

 

//////////////////////////////////////////////////////////

//별도의 Console창을 이용한 디버깅 수단2

//void main()...

AllocConsole();                                                             // 콘솔창 만든다.

char strBuffer[256]="";

DWORD(또는 size_t) dwWrite;
HANDLE m_hOut = GetStdHandle(STD_OUTPUT_HANDLE);                            // 콘솔창의 핸들 가져옴.
WriteConsole(m_hOut, strBuffer, strlen(strBuffer), &dwWrite, NULL);// 콘솔창에 쓸때
FreeConsole();                                                              // 콘솔창을 없앰.

 

//////////////////////////////////////////////////////////

//별도의 Console창을 이용한 디버깅 수단3

#include <stdio.h>                                                        //또는 #include <iostream>

//void main()...

AllocConsole();

freopen("CONOUT$", "wt", stdout );                       //이것을 사용하면 출력함수 사용이 가능하다

printf("");                                                                        //또는 std::cout << "";

FreeConsole(); 

 

 //////////////////////////////////////////////////////////

 //별도의 Console창을 이용한 디버깅 수단4

//단 WinMainCRTStartup은 컴파일이 되기전에는 생성되지 않으므로 컴파일 후 삽입해주자
 #pragma comment(linker, "/entry:WinMainCRTStartup /subsystem:console")

#include <stdio.h>                                                          //또는 #include <iostream>

//void main()...

printf("");                                                                         //또는 std::cout << "";

 
쉽고 간단한 방법이라면 1번 방법과 3번 방법이 젤 좋아 보인다.
그중에서 3번이라면 C++ 기초문법 중 하나처럼 별도의 랩핑이나 (기능)클래스 생성 없이
출력창에 간단히 로그를 남길 수 있어 편할 듯 하다.
반응형
Posted by blueasa
, |