728x90
반응형
프로그램 수행시간 또는 실행시간 측정하는 법
프로그래밍 중 특정 구간에서 코드 실행 시간을 알아내야 하는 경우에 쓰이는 방법이다.
C 또는 C++ 에서 프로그램 실행시간을 측정하는 방법은 크게 두 가지로 나뉘어 사용된다.
1. time 함수 이용하기
#include <time.h> 헤더파일을 포함시키고 아래와 같이 사용한다.
이와 같은 방법은 ms 단위가 아닌 초(s) 단위로 측정된다.
#include <stdio.h> #include <time.h> int main() { time_t start, end; double result; start = time(NULL); // 수행 시간 측정 시작 /* 수행시간 측정하고자 하는 코드 */ end = time(NULL); // 시간 측정 끝 result = (double)(end - start); // 결과 출력 printf("%f", result); return 0; }
2. clock 함수 이용하기
ms 단위로 시간을 측정 할 수 있다. 마찬가지로 #include <time.h> 헤더 파일을 포함시켜야 한다.
마이크로 초(ms) 단위를 초(s)로 나타내려면 CLOCKS_PER_SEC 으로 나누어 나타내면 된다.
CLOCKS_PER_SEC는 매크로인데
clock_t 의 값을 CLOCK_PER_SEC 으로 나누면 소모한 시간 (clock ticks per second)가 나온다.
#include <stdio.h> #include <time.h> int main() { clock_t start, end; double result; start = clock(); // 수행 시간 측정 시작 /* 수행시간 측정하고자 하는 코드 */ end = clock(); //시간 측정 끝 result = (double)(end - start); // 결과 출력 cout << "result : " << ((result) / CLOCKS_PER_SEC) << " seconds" << endl; printf("%f", result / CLOCKS_PER_SEC); // 또는 cout << "result : " << result << " microseconds" << endl; // 또는 printf("%f", result); return 0; }
참고자료 1 : http://blockdmask.tistory.com/187
참고자료 2 : http://hijuworld.tistory.com/1
728x90
반응형
'Programming > C | C++' 카테고리의 다른 글
[C++] 반복자 (Iterator) (0) | 2018.09.04 |
---|---|
[C++] 자료형의 종류와 범위 그리고 WORD 와 DWORD (2) | 2018.09.03 |
[C] printf 출력형식 %d %i %u %X %x %o %p %s %c %C %f %e %E %g %G (2) | 2018.08.29 |
[C] 포인터 (0) | 2018.08.21 |
[C] 파일 목록 가져오기 (2) | 2018.08.16 |