로그인

검색

MoA
조회 수 1121 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
#include <iostream>
using namespace std;

void MacroTest()
{
cout << "함수 이름: " << __FUNCTION__ << endl;
cout << "이 부분이 실행되고 있는 라인 번호: " << __LINE__ << endl;
cout << "현재 파일 이름: " << __FILE__ << endl;
cout << "가장 최근에 컴파일된 시간: " << __TIME__ << endl;
cout << "가장 최근에 이 파일이 수정된 시간: " << __TIMESTAMP__ << endl;
}

int main()
{
MacroTest();
return 0;
}


__FUNCTION__의 경우 Visual Studio에서 지원하는 매크로이며 표준은 아니다. 표준은 __func__


유니코드 환경에서는 TEXT(__FILE__) 같이 문자열 상수를 유니코드로 바꾸려하면 에러난다.

L"파일명"으로 바뀌는게 아니라 L__FILE__ 로 바뀌기 때문.(TEXT 매크로 우선 실행)

그러므로 아래와 같이 매크로를 새로 정의한다.


#define WIDEN(x) L ## x
#define __WFILE__ WIDEN(__FILE__)

__FILE__ 대신 __WFILE__을 사용하면 된다.

물론 const char*를 const wchar_t* 로 변환하는 함수를 사용하는 방법도 있으나 매크로보단 어렵다.


출처 : http://blog.naver.com/sorkelf/40140962401

참고 : http://msdn.microsoft.com/ko-kr/library/b0084kay(v=VS.90)

?

  1. Programming 게시판 관련

  2. 정적 배열과 STL vector 속도 비교

  3. 고양이 밖으로 못나가게 하기

  4. 윈도우 프로그램의 종료 메시지 순서

  5. Thread Programming

  6. 고양이 움직이기

  7. [농장게임 만들기] 5. 플레이어를 추가하자

  8. 프로그램 배포용으로 만드는 과정

  9. [첫게임 만들기] 9. 사운드

  10. ofstream ifstream

  11. [첫게임 만들기] 8. Win or Lose

  12. fwrite(), fread()

  13. 동적 프로그래밍

  14. Buffer Overrun

  15. 비주얼 스튜디오 2005 단축키

  16. [S/W 공학] 월-인원(man-month), LOC

  17. [첫게임 만들기] 5. 적을 생성하자

  18. char*, String, CString

  19. Coding conventions

  20. HWND와 HINSTANCE

  21. 정신나간 정렬 알고리즘

Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 15 Next
/ 15