글
MFC dialog에서 콘솔(console)로 디버깅하기
Skills/Programming
2014. 12. 15. 15:09
MFC 다이얼로그를 이용하다 보면, 콘솔 응용프로그램을 코딩할 때처럼 printf 나 cout 같은 것으로 디버깅하고 싶을 때가 있다.. 그럴 떄 아래와 같은 방법으로 해결할 수 있다.
방법 1
App의 InitInstance에서 AllocConsole()을 호출한다.
디버그 모드에서만 동작할 것이므로 간단히 다음과 같이 할 수 있겠다.
#ifdef _DEBUG
if( !AllocConsole() )
{
AfxMessage(_T("Failed to create the console!"), MB_ICONEXCLAMATION);
}
#endif
해제하기 위해서는 ExitInstance에서 FreeColsole()을 호출한다.
이전과 마찬가지로 다음과 같이 쓰면 된다.
#ifdef _DEBUG
if( !FreeConsole() )
{
AfxMessage(_T("Failed to free the console!"), MB_ICONEXCLAMATION);
}
#endif
방법 2
stdafx.h에서 다음과 같이 입력한다.
#ifdef _DEBUG
#pragma comment(linker, "/entry:WinMainCRTStartup /subsystem:console")
#endif
출력은 일반적인 콘솔 프로그램과 같이 cout이나 printf 등을 사용하면 된다.
'Skills > Programming' 카테고리의 다른 글
C++ 반전 연산자~와 논리 연산자 !의 차이 (0) | 2014.12.16 |
---|---|
공유 메모리를 이용한 IPC (0) | 2014.12.15 |
[C/C++] double 형 데이터에 분수 넣기 (0) | 2014.12.09 |
첫째 예외가 있습니다. 0xC0000005: 0x00000018 위치를 읽는 동안 액세스 위반이 발생했습니다. (0) | 2014.11.12 |
클래스 객체 생성 방법에 관하여.. (new 사용에 관하여) (0) | 2014.11.12 |