一、C++獲取當前時間月份最後一天
在C++中獲取當前時間,並獲取當前時間所在月份的最後一天,我們可以使用tm結構體和mktime函數實現。首先,我們使用time函數獲取當前時間的時間戳,然後轉化為tm結構體,並將其時間設置為下一個月的1號0點0分0秒。再將其時間減去86400秒(即一天的秒數),最後就可以獲得該月份的最後一天的時間戳。具體代碼如下所示:
#include <iostream>
#include <ctime>
using namespace std;
int main() {
time_t rawtime;
struct tm * timeinfo;
time(&rawtime);
timeinfo = localtime(&rawtime);
timeinfo->tm_mday = 1;
timeinfo->tm_mon++;
mktime(timeinfo);
timeinfo->tm_mday--;
cout << "該月份的最後一天為:" << timeinfo->tm_mday << endl;
return 0;
}
二、C++獲取當前時間的秒數
在C++中獲取當前時間的秒數,我們可以使用time函數獲取當前時間的時間戳,然後將其強制轉化為整型並取餘60,就可以獲取到當前時間的秒數。具體代碼如下所示:
int main() {
time_t rawtime;
time(&rawtime);
int sec = rawtime % 60;
cout << "當前時間的秒數為:" << sec << endl;
return 0;
}
三、C++獲取當前時間年月日時分秒
在C++中獲取當前時間的年月日時分秒,我們同樣可以使用tm結構體和localtime函數實現。具體代碼如下所示:
int main() {
time_t rawtime;
struct tm * timeinfo;
time(&rawtime);
timeinfo = localtime(&rawtime);
cout << "當前時間為:" << asctime(timeinfo);
return 0;
}
四、C++獲取當前時間並格式化
在C++中獲取當前時間並格式化輸出,我們可以使用strftime函數實現。該函數的第一個參數為一個字元數組,用於存儲格式化後的字元串;第二個參數為字元數組的大小;第三個參數為格式字元串,用於指定格式;第四個參數為tm結構體指針,用於指定時間。具體代碼如下所示:
int main() {
time_t rawtime;
struct tm * timeinfo;
char buffer[80];
time(&rawtime);
timeinfo = localtime(&rawtime);
strftime(buffer, 80, "%Y-%m-%d %H:%M:%S", timeinfo);
cout << "當前時間為:" << buffer << endl;
return 0;
}
五、C++獲取當前時間的0點
在C++中獲取當前時間的0點,我們可以使用tm結構體和mktime函數實現。該函數的作用是將tm結構體轉化為time_t類型的時間戳,我們只需要將tm結構體的時間設置為0點即可。具體代碼如下所示:
int main() {
time_t rawtime;
struct tm * timeinfo;
time(&rawtime);
timeinfo = localtime(&rawtime);
timeinfo->tm_hour = 0;
timeinfo->tm_min = 0;
timeinfo->tm_sec = 0;
mktime(timeinfo);
cout << "當前時間的0點為:" << asctime(timeinfo);
return 0;
}
六、C++獲取當前時間轉時間戳
在C++中獲取當前時間並將其轉化為時間戳,我們可以使用time函數實現。具體代碼如下所示:
int main() {
time_t rawtime;
time(&rawtime);
cout << "當前時間的時間戳為:" << rawtime << endl;
return 0;
}
七、C++獲取當前時間的時分秒毫秒
在C++中獲取當前時間的時分秒毫秒,我們可以使用chrono頭文件中的函數和類型實現。具體代碼如下所示:
#include <iostream>
#include <chrono>
using namespace std;
int main() {
auto now = chrono::system_clock::now();
auto ms = chrono::duration_cast<chrono::milliseconds>(now.time_since_epoch()).count();
auto s = chrono::duration_cast<chrono::seconds>(now.time_since_epoch()).count();
s = s % 86400;
auto hour = s / 3600;
auto minute = (s - hour * 3600) / 60;
auto second = s - hour * 3600 - minute * 60;
auto millisecond = ms % 1000;
cout << "當前時間為:" << hour << ":" << minute << ":" << second << "." << millisecond << endl;
return 0;
}
八、Oracle獲取當前時間
在Oracle資料庫中獲取當前時間,我們可以使用sysdate函數實現。具體代碼如下所示:
SELECT sysdate FROM dual;
九、Qt獲取當前時間
在Qt應用程序中獲取當前時間,我們可以使用QDateTime類實現。具體代碼如下所示:
#include <iostream>
#include <QDateTime>
using namespace std;
int main() {
QDateTime currentDateTime = QDateTime::currentDateTime();
QString currentDateTimeString = currentDateTime.toString("yyyy-MM-dd hh:mm:ss");
cout << "當前時間為:" << currentDateTimeString.toStdString() << endl;
return 0;
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/185721.html
微信掃一掃
支付寶掃一掃