From 018dda723c6079b57b5357d100426a796d0659c5 Mon Sep 17 00:00:00 2001 From: Howard Hinnant Date: Fri, 7 Jul 2017 18:03:21 -0400 Subject: [PATCH] Updated Boost datetime Examples Translated (markdown) --- Boost-datetime-Examples-Translated.md | 44 +++++++++++++-------------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/Boost-datetime-Examples-Translated.md b/Boost-datetime-Examples-Translated.md index 7511a80..b1f39e7 100644 --- a/Boost-datetime-Examples-Translated.md +++ b/Boost-datetime-Examples-Translated.md @@ -129,30 +129,28 @@ main() ``` ### Last Day of the Months +```c++ +#include "date.h" +#include +#include - #include "date.h" - #include - #include - - int - main() - { - using namespace date; - int yi; - std::cout << " Enter Year(ex: 2002): "; - std::cin >> yi; - auto y = year{yi}; - assert(y.ok()); - unsigned mi; - std::cout << " Enter Month(1..12): "; - std::cin >> mi; - auto m = month{mi}; - assert(m.ok()); - auto start_of_next_year = y/jan/1 + years{1}; - for (auto d = y/m/1; d < start_of_next_year; d += months{1}) - std::cout << year_month_day{d.year()/d.month()/last} << '\n'; - } - +int +main() +{ + using namespace date; + std::cout << " Enter Year(ex: 2002): "; + year y; + std::cin >> parse("%Y", y); + assert(!std::cin.fail()); + std::cout << " Enter Month(1..12): "; + month m; + std::cin >> parse(" %m", m); + assert(!std::cin.fail()); + auto start_of_next_year = y/jan + years{1}; + for (auto ym = y/m; ym < start_of_next_year; ym += months{1}) + std::cout << year_month_day{ym/last} << '\n'; +} +``` ### Localization Demonstration