Lập trình

Date và Time trong C++ - Một Tổng Quan

Huy Erick

Trong ngôn ngữ lập trình C++, thư viện chuẩn không cung cấp một kiểu dữ liệu chính thức cho Date và Time. Tuy nhiên, chúng ta có thể sử dụng các cấu trúc và hàm...

Trong ngôn ngữ lập trình C++, thư viện chuẩn không cung cấp một kiểu dữ liệu chính thức cho Date và Time. Tuy nhiên, chúng ta có thể sử dụng các cấu trúc và hàm có sẵn để làm việc với Date và Time từ ngôn ngữ C.

Có 4 kiểu dữ liệu chính liên quan đến thời gian trong C++: clock_t, time_t, size_t và tm. Trong đó, clock_t, size_t và time_t có thể biểu diễn thời gian hệ thống dưới dạng số nguyên.

Cấu trúc tm chứa thông tin Date và Time với các thành phần như "giây, phút, giờ, ngày, tháng, năm, ngày trong tuần, ngày trong năm và giờ Daylight Savings".

Dưới đây là một số hàm quan trọng khi làm việc với Date và Time trong C hoặc C++:

Các hàm quan trọng cho Date và Time trong C/C++

  • time_t time(time_t *time): Trả về thời gian theo lịch của hệ thống.
  • char *ctime(const time_t *time): Trả về một chuỗi biểu diễn thời gian.
  • struct tm *localtime(const time_t *time): Trả về thời gian địa phương.
  • clock_t clock(void): Trả về giá trị thời gian gần đúng của chương trình.
  • char *asctime(const struct tm *time): Trả về một chuỗi biểu diễn thời gian từ cấu trúc tm.
  • struct tm *gmtime(const time_t *time): Trả về thời gian dưới dạng Coordinated Universal Time (UTC).
  • time_t mktime(struct tm *time): Trả về thời gian tương đương với cấu trúc tm.
  • double difftime(time_t time2, time_t time1): Tính toán khoảng thời gian giữa hai thời điểm.
  • size_t strftime(): Định dạng Date và Time theo định dạng cụ thể.

Lấy Date và Time hiện tại trong C++

Để lấy Date và Time hiện tại trong C++, chúng ta có thể sử dụng các hàm có sẵn như sau:

#include  #include  using namespace std;  int main() {     time_t hientai = time(0);     char *dt = ctime(&hientai);     cout  "Date và Time hiện tại là: "  dt  endl;      tm *gmtm = gmtime(&hientai);     dt = asctime(gmtm);     cout  "UTC Date và Time là: "  dt  endl; }

Sau khi biên dịch và chạy chương trình, bạn sẽ nhận được kết quả như sau:

Định dạng Time bằng cấu trúc tm trong C++

Cấu trúc tm là một thành phần quan trọng khi làm việc với Date và Time trong C và C++. Cấu trúc này giữ thông tin về ngày và giờ dưới dạng mẫu cấu trúc C đã được đề cập ở trên. Hầu hết các hàm liên quan đến thời gian sẽ sử dụng cấu trúc tm. Dưới đây là ví dụ cho việc sử dụng các hàm liên quan tới Date và Time và cấu trúc tm:

#include  #include  using namespace std;  int main() {     time_t baygio = time(0);     cout  "Số giây tính từ 1/1/1970 là: "  baygio  endl;      tm *ltm = localtime(&baygio);     cout  "Năm: "  1900 + ltm->tm_year  endl;     cout  "Tháng: "  1 + ltm->tm_mon  endl;     cout  "Ngày: "  ltm->tm_mday  endl;     cout  "Thời gian: "  1 + ltm->tm_hour  ":"  1 + ltm->tm_min  ":"  1 + ltm->tm_sec  endl; }

Sau khi biên dịch và chạy chương trình, bạn sẽ nhận được kết quả như sau:

Theo Tutorialspoint

1