C++:
Obteniendo la fecha actual
Cómo hacerlo:
C++ ofrece varias maneras de obtener la fecha actual, incluyendo la biblioteca estándar de C++ y bibliotecas de terceros como Boost. Los siguientes ejemplos demuestran cómo lograr esta tarea.
Usando <chrono>
(C++20 y posteriores)
C++20 introdujo más funcionalidades en la biblioteca <chrono>
, haciendo sencillo obtener la fecha actual:
#include <iostream>
#include <chrono>
#include <format> // Para std::format (C++20)
int main() {
auto current_time_point = std::chrono::system_clock::now(); // Captura el tiempo actual
auto current_time_t = std::chrono::system_clock::to_time_t(current_time_point); // Convertir a time_t
// Formatear el tiempo a un formato legible
std::cout << "Fecha Actual: " << std::format("{:%Y-%m-%d}", std::chrono::system_clock::to_time_t(current_time_point)) << std::endl;
return 0;
}
Salida de Ejemplo:
Fecha Actual: 2023-03-15
Usando <ctime>
Para programadores trabajando con versiones más antiguas de C++ o aquellos que prefieren la biblioteca tradicional de C:
#include <iostream>
#include <ctime>
int main() {
std::time_t t = std::time(0); // Obtener el tiempo actual
std::tm* now = std::localtime(&t);
std::cout << "Fecha Actual: "
<< (now->tm_year + 1900) << '-'
<< (now->tm_mon + 1) << '-'
<< now->tm_mday
<< std::endl;
return 0;
}
Salida de Ejemplo:
Fecha Actual: 2023-03-15
Usando Boost Date_Time
Para proyectos que utilizan las bibliotecas Boost, la biblioteca Boost Date_Time ofrece un método alternativo para obtener la fecha actual:
#include <iostream>
#include <boost/date_time.hpp>
int main() {
// Obtener el día actual usando el calendario gregoriano de Boost
boost::gregorian::date today = boost::gregorian::day_clock::local_day();
std::cout << "Fecha Actual: " << today << std::endl;
return 0;
}
Salida de Ejemplo:
Fecha Actual: 2023-Mar-15
Estos ejemplos proporcionan una base sólida para trabajar con fechas en C++, crucial para una amplia gama de aplicaciones.