Computer >> Máy Tính >  >> Lập trình >> C ++

Làm thế nào để làm cho chương trình ngủ trong x mili giây trong C ++?

Ở đây chúng ta sẽ xem cách ngủ đối với x (do người dùng cung cấp) mili giây trong chương trình C ++.

Để làm điều này, chúng ta có thể sử dụng các thư viện khác nhau. Nhưng ở đây chúng ta đang sử dụng hàm clock (). Đồng hồ () sẽ trả về thời gian hiện tại của CPU. Ở đây chúng tôi sẽ cố gắng tìm thời gian kết thúc từ đồng hồ và giá trị x đã cho. Sau đó, trong khoảng thời gian đó, chúng tôi sẽ chạy một vòng lặp while trống để dành thời gian. Ở đây, một macro được sử dụng có tên CLOCKS_PER_SEC, macro này tìm số lần tích tắc đồng hồ mỗi giây.

Hãy cho chúng tôi xem mã để hiểu rõ hơn về khái niệm này.

Ví dụ

#include <iostream>
#include <time.h>
using namespace std;
void sleepcp(int milli) {
   // Cross-platform sleep function
   clock_t end_time;
   end_time = clock() + milli * CLOCKS_PER_SEC/1000;
   while (clock() < end_time) {
      //blank loop for waiting
   }
}
int main() {
   cout << "Staring counter for 7 seconds (7000 Milliseconds)" << endl;
   sleepcp(7000);
   cout << "Timer end" << endl;
}

Đầu ra

Staring counter for 7 seconds (7000 Milliseconds)
Timer end