มีวิธีต่างๆ ที่สามารถพิมพ์วัน เดือน และเวลาของระบบในรูปแบบที่มนุษย์อ่านได้ (Human Readable Form)
วิธีที่ 1
ใช้ time() − ใช้หาเวลาปฏิทินปัจจุบัน และมีชนิดข้อมูลคณิตศาสตร์ที่เก็บเวลา
localtime() − ใช้เติมโครงสร้าง (structure) ด้วยวันที่และเวลา
asctime() − แปลงเวลาท้องถิ่น (Local time) เป็นรูปแบบ Human Readable
Day Month Date hour:minute:second Year
ตัวอย่าง
#include<iostream>
#include<ctime> // ใช้ทำงานกับวันที่และเวลา
using namespace std;
int main() {
time_t t; // t ส่งเป็นอาร์กิวเมนต์ในฟังก์ชัน time()
struct tm *tt; // ประกาศตัวแปรสำหรับ localtime()
time(&t); // ส่งอาร์กิวเมนต์ให้ time()
tt = localtime(&t);
cout << "Current Day, Date and Time is = " << asctime(tt);
return 0;
}
ผลลัพธ์
ถ้ารันโปรแกรมข้างต้น จะได้ผลลัพธ์ดังนี้
Current Day, Date and Time is = Tue Jul 23 19:05:50 2019
วิธีที่ 2
Chrono library ใช้วัดเวลาที่ผ่านไปในวินาที, มิลลิวินาที, ไมโครวินาที และนาโนวินาที
ตัวอย่าง
#include <chrono>
#include <ctime>
#include <iostream>
using namespace std;
int main() {
auto givemetime = chrono::system_clock::to_time_t(chrono::system_clock::now());
cout << ctime(&givemetime) << endl;
}
ผลลัพธ์
ถ้ารันโปรแกรมข้างต้น จะได้ผลลัพธ์ดังนี้
Current Day, Date and Time is = Tue Jul 23 19:05:50 2019
วิธีที่ 3
ตัวอย่าง
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
time_t givemetime = time(NULL);
printf("%s", ctime(&givemetime)); // ctime() คืนค่าเวลาที่ให้มา
return 0;
}
ผลลัพธ์
ถ้ารันโปรแกรมข้างต้น จะได้ผลลัพธ์ดังนี้
Tue Jul 23 20:14:42 2019