在C++中使用sprintf_s
函數格式化日期和時間非常簡單。以下是一個簡單的示例:
#include <iostream>
#include <ctime>
int main() {
char buffer[80];
time_t now = time(0);
tm* timeinfo = localtime(&now);
sprintf_s(buffer, sizeof(buffer), "%d-%02d-%02d %02d:%02d:%02d",
timeinfo->tm_year + 1900, timeinfo->tm_mon + 1, timeinfo->tm_mday,
timeinfo->tm_hour, timeinfo->tm_min, timeinfo->tm_sec);
std::cout << "Current date and time: " << buffer << std::endl;
return 0;
}
在這個示例中,我們使用time
函數獲取當前的時間戳,然后調用localtime
函數將時間戳轉換為本地時間。接著,我們使用sprintf_s
函數將日期和時間格式化為YYYY-MM-DD HH:MM:SS
的字符串,并將其存儲在buffer
數組中。最后,我們將格式化后的日期和時間輸出到控制臺。
請注意,在使用sprintf_s
函數時,需要傳入目標緩沖區的大小作為參數,以確保不會發生緩沖區溢出。