How to get the current day of year in C++

1 Answer

0 votes
#include <iostream>
#include <ctime>

int GetDayOfYear() {
    std::time_t t = std::time(0);   // get current time
    std::tm* now = std::localtime(&t);
    
    int year = now->tm_year + 1900;
    int month = now->tm_mon + 1;
    int day = now->tm_mday;
         
    tm date = {};
    
    date.tm_year = year - 1900;
    date.tm_mon = month - 1;
    date.tm_mday = day;
    
    mktime(&date);
    
    return date.tm_yday + 1;
}

int main() {
    
    int dayOfYear = GetDayOfYear();

    std::cout << dayOfYear;
}



/*
run:

356

*/

 



answered Dec 22, 2022 by avibootz
edited Dec 22, 2022 by avibootz

Related questions

1 answer 109 views
1 answer 127 views
1 answer 127 views
1 answer 138 views
2 answers 157 views
1 answer 107 views
107 views asked Dec 22, 2022 by avibootz
1 answer 82 views
...