I have been trying to get the day of the year into an int(0-365). I have tried the time.h library and did int tm_yday but it returned an incorrect number.

I am using Linux. G++(gcc) compiler. Thanks for the help.

Recommended Answers

Works for me:

#include <stdio.h>
#include <time.h>

int main(void)
{
  time_t t = time(NULL);
  struct tm *now = localtime(&t);

  printf("Day of the year: %d\n", now->tm_yday);

  return 0;
}

Output (for Feb 15th, 2010, EST):

Day of the year: 45

What was your "incorrect number"?

Jump to Post

All 2 Replies

Works for me:

#include <stdio.h>
#include <time.h>

int main(void)
{
  time_t t = time(NULL);
  struct tm *now = localtime(&t);

  printf("Day of the year: %d\n", now->tm_yday);

  return 0;
}

Output (for Feb 15th, 2010, EST):

Day of the year: 45

What was your "incorrect number"?

Works for me:

#include <stdio.h>
#include <time.h>

int main(void)
{
  time_t t = time(NULL);
  struct tm *now = localtime(&t);

  printf("Day of the year: %d\n", now->tm_yday);

  return 0;
}

Output (for Feb 15th, 2010, EST):

Day of the year: 45

What was your "incorrect number"?

Thanks, I see what I did wrong now.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.