윈도우 환경에서 C/C++ 프로그램 실행 시간 측정 하기

출처 : http://209.85.175.104/search?q=cache:Yqh_TxBLaTQJ:grmanet.sogang.ac.kr/zbxe/algorithm08/141361+시간+측정&hl=ko&ct=clnk&cd=3&gl=kr

필요한 헤더
#include < windows.h >

디파인
#define CHECK_TIME_START QueryPerformanceFrequency ((_LARGE_INTEGER*)&freq); QueryPerformanceCounter((_LARGE_INTEGER*)&start)
#define CHECK_TIME_END(a) QueryPerformanceCounter((_LARGE_INTEGER*)&end); a=(float)((float) (end - start)/freq)

필요한 함수 선언
__int64 start, freq, end;
float resultTime=0;

// 시간측정 시작
CHECK_TIME_START;

////// 측정할 부분

// 측정 종료
CHECK_TIME_END(resultTime);

// 출력 (초단위)
printf("%f(s).. \n", resultTime);


예제

#include < stdio.h >
#include < windows.h >

#define CHECK_TIME_START QueryPerformanceFrequency ((_LARGE_INTEGER*)&freq); QueryPerformanceCounter((_LARGE_INTEGER*)&start)
#define CHECK_TIME_END(a) QueryPerformanceCounter((_LARGE_INTEGER*)&end); a=(float)((float) (end - start)/freq)

int main()
{
__int64 start, freq, end;
float resultTime=0;

CHECK_TIME_START;

printf("helloworld");

CHECK_TIME_END(resultTime);
printf("%f(s).. \n", resultTime);

return 0;
}

안돌려 봤는데 될꺼다. 헬로월드를 찍는데 얼마나 걸릴것인가!

자바는.... System.nanotime(); 쓰면 될것이다.. 음.. System쪽이 아니었나 하하;
체크하고자 하는 구간 앞뒤에서 나노타임으로 시간 찍고 빼주면 실행시간.

by illux | 2008/09/20 00:57 | 공부 | 트랙백 | 덧글(0)

트랙백 주소 : http://outback.egloos.com/tb/4622894
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]

:         :

:

비공개 덧글

◀ 이전 페이지          다음 페이지 ▶