C++:
קבלת התאריך הנוכחי
איך ל:
C++ מספק מספר דרכים לקבל את התאריך הנוכחי, כולל הספרייה הסטנדרטית של C++ וספריות של צד שלישי כגון Boost. הדוגמאות הבאות מדגימות איך לבצע את המשימה הזו.
באמצעות <chrono>
(C++20 ואילך)
C++20 הציג פונקציונליות נוספת בספרייה <chrono>
, ההופכת את קבלת התאריך הנוכחי לפשוטה יותר:
#include <iostream>
#include <chrono>
#include <format> // עבור std::format (C++20)
int main() {
auto current_time_point = std::chrono::system_clock::now(); // לכידת הזמן הנוכחי
auto current_time_t = std::chrono::system_clock::to_time_t(current_time_point); // המרה ל-time_t
// פורמט הזמן לפורמט קריא
std::cout << "Current Date: " << std::format("{:%Y-%m-%d}", std::chrono::system_clock::to_time_t(current_time_point)) << std::endl;
return 0;
}
פלט לדוגמה:
Current Date: 2023-03-15
באמצעות <ctime>
למתכנתים העובדים עם גרסאות ישנות יותר של C++ או אלה המעדיפים את הספרייה המסורתית של C:
#include <iostream>
#include <ctime>
int main() {
std::time_t t = std::time(0); // קבלת הזמן הנוכחי
std::tm* now = std::localtime(&t);
std::cout << "Current Date: "
<< (now->tm_year + 1900) << '-'
<< (now->tm_mon + 1) << '-'
<< now->tm_mday
<< std::endl;
return 0;
}
פלט לדוגמה:
Current Date: 2023-03-15
באמצעות Boost Date_Time
לפרויקטים המשתמשים בספריות של Boost, ספריית Boost Date_Time מציעה דרך חלופית לקבל את התאריך הנוכחי:
#include <iostream>
#include <boost/date_time.hpp>
int main() {
// קבלת היום הנוכחי באמצעות לוח השנה הגרגוריאני של Boost
boost::gregorian::date today = boost::gregorian::day_clock::local_day();
std::cout << "Current Date: " << today << std::endl;
return 0;
}
פלט לדוגמה:
Current Date: 2023-Mar-15
הדוגמאות הללו מספקות בסיס יסודי לעבודה עם תאריכים ב-C++, הכרחי עבור מגוון רחב של יישומים.