Home > C / C++ > Các hàm C / C++ > Hàm clock() trong C / C++
Tuyển 1 bạn nữ CNTT dịch bài javascript tiếng Anh sang tiếng Việt (kiến thức căn bản), 1 bài 100 - 400 từ, nhuận bút 10k -> 20k. Liên hệ Zalo: 0979306603.

Hàm clock() trong C / C++

Trong bài viết này chúng ta sẽ tìm hiểu về hàm clock() trong C / C++. Đây là một hàm được sử dụng để trả về thời gian xử lý gần đúng.

Hàm clock() là hàm có sẵn trong thư viện ctime, vì vậy trước khi sử dụng nó chúng ta cần khai báo thư viện đã nhé: #include<ctime>

Cú pháp hàm clock() trong C/ C++

Hàm clock() trong C++ trả về thời gian xử lý gần đúng được chương trình sử dụng. Hiểu đơn giản là nó sẽ trả về thời gian giữa hai lần gọi hàm clock().

Đồng hồ thời gian có thể nhanh hơn hoặc chậm hơn đồng hồ thực tế. Nó phụ thuộc vào cách hệ điều hành phân bổ tài nguyên cho tiến trình.

Cú pháp:

clock_t clock();

Hàm trả về:

  • Khi thành công, hàm clock () trả về thời gian bộ xử lý được chương trình sử dụng cho đến thời điểm hiện tại.
  • Khi không thành công, nó trả về -1 được chuyển thành kiểu clock_t.

Ví dụ: Ta muốn tính khoảng thời gian sử dụng hàm clock lần thứ nhất đến lần thứ hai.

//sử dụng hàm clock() lần thứ nhất
time_req = clock();
//sử dụng hàm clock() lần thứ hai, sau đó tính khoảng thời gian bằng cách lấy lần sau trừ lần đầu
time_req = clock() - time_req;

Cách dùng hàm clock() trong C / C++

Trong phần này mình sẽ thực hiện một ví dụ sử dụng hàm clock() để minh họa cho cách dùng của nó. Cụ thể mình sẽ áp dụng hàm clock() để tính khoảng thời gian khác nhau giữa việc sử dụng và không sử dụng hàm pow() để tính.

#include <iostream>
#include <cmath>
#include <cstdio>
using namespace std;
int main() {
  float x,y;
	clock_t time_req;

	/* ví dụ sử dụng hàm pow() để tính */
  //sử dụng hàm clock() lần thứ nhất
	time_req = clock();
	for(int i=0; i<100000; i++)
	{
		y = log(pow(i,5));
	}
  //sau khi tính xong, sử dụng lần hai đê tính toán khoảng thời gian
	time_req = clock() - time_req;
	cout << "Sử dụng hàm pow(), thì mất " << (float)time_req/CLOCKS_PER_SEC << " giây để tính" << endl;
	
	/* ví dụ không sử dụng hàm pow() để tính, tương tự như trên */ 
	time_req = clock();
	for(int i=0; i<100000; i++)
	{
		y = log(i*i*i*i*i);
	}
	time_req = clock()- time_req;
	cout << "Không sử dụng hàm pow(), thì mất " << (float)time_req/CLOCKS_PER_SEC << " giây để tính" << endl;

  cout<<"\n----------------------------------\n";
  cout<<"Chương trình này được đăng tại Freetuts.net";
}

Kết quả:

clock 01 PNG

Như vậy là chúng ta đã tìm hiểu xong hàm clock() trong C/ C++. Ở các bài tiếp theo mình sẽ tiếp tục giới thiệu các hàm khác trong thư viện ctime, các bạn chú ý theo dõi nhé !!!

Bình luận đã đóng, nếu có thắc mắc hãy đặt câu hỏi tại hoicode.com để admin trả lời.

Nguồn: freetuts.net

Danh sách các hàm
Hàm asctime() trong C / C++
Hàm ctime() trong C / C++
Hàm localtime() trong C / C++
Hàm time() trong C / C++
Hàm gmtime() trong C / C++
Hàm clock() trong C / C++

BÀI VIẾT

notice png LIST home png HOME hot gif BÁO
LỖI
top png TOP