חישוב זמן בין תאריכים, ++C

חישוב זמן בין תאריכים, ++C

שלום לכם, ברצוני לחשב את מספר הימים שיעברו עד תאריך מסויים, מהיום, בעזרת תוכנית ++C. דוגמאות קוד/לינקים יתקבלו בברכה. בתודה מראש, פינוקיו שמי.
 

vinney

Well-known member
שתי דרכים

אם אתה רוצה להשתמש ב MFC אז תשתמש במחלקות CTime ו CTimeSpan. אם אתה רוצה לעבוד עם ANSI/ISO אז יש את הפונקציות של time.h שממירות את מבנה תאריך/שעה (struct tm) למשתנה מטיפוס time_t (שזה בעצם long) שמייצג מס' שניות שעברו מ01 לינואר 1970 עד התאריך הנתון, וכך ניתן לעשות חישובים בשניות, ולהמיר בסוף חזרה למבנה תאריך/שעה.
 

joeher

New member
זה ב C מחשב יום בשבוע,

אני מקווה שתבין לבד את מה שחסר - יש את מספר הימים מ 1.1.2000 והשאר כמו שאמר הילל הזקן - זיל גמור
const char days_in_m[12]={31,28,31,30,31,30,31,31,30,31,30,31}; /* * return day of week from time struct */ int day_of_week(TD * t) { long k; // works for only until 2099 int i; int y,m,d; y=bcd2bin(t->yy); m=bcd2bin(t->mo); d=bcd2bin(t->dd); // calc numbers of days since 1/1/2000 k= y * 365 + (y-1)/4 ; // 365 day + leap years // add days this year for(i = 0; i< m - 1; i++) k+=days_in_m; // is current leap and febroary over? if( (m > 2) && ( y % 4 == 0) ) k++; k += d - 1; days_from_y2k=k; k %= 7; return(k+1); }
 
למעלה