Question: Please explain why this code does not function the way is written and how can I make it better to function. Thank you Code: #define

Please explain why this code does not function the way is written and how can I make it better to function.

Thank you

Code:

#define ORIGINYEAR 1980

BOOL ConvertDays(UINT32 days, SYSTEMTIME* lpTime)

{

int dayofweek, month, year;

UINT8 *month_tab;

//Calculate current day of the week

dayofweek = GetDayOfWeek(days);

year = ORIGINYEAR;

while (days > 365)

{

if (IsLeapYear(year))

{

if (days > 366)

{

days -= 366;

year += 1;

}

}

else

{

days -= 365;

year += 1;

}

}

// Determine whether it is a leap year

month_tab = (UINT8 *)((IsLeapYear(year))? monthtable_leap : monthtable);

for (month=0; month<12; month++)

{

if (days <= month_tab[month])

break;

days -= month_tab[month];

}

month += 1;

lpTime->wDay = days;

lpTime->wDayOfWeek = dayofweek;

lpTime->wMonth = month;

lpTime->wYear = year;

return TRUE;

}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!