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 124 views
1 answer 141 views
1 answer 143 views
1 answer 150 views
2 answers 171 views
1 answer 116 views
116 views asked Dec 22, 2022 by avibootz
1 answer 96 views
...