| Copyright © 1998-2006 Dipl.-Inform. Kai Hofmann. All rights reserved! | |||||||
compare = date_Compare2Dates(day1,month1,year1,day2,month2,year2);
short date_Compare2Dates(const unsigned short day1, const unsigned short month1, const long year1, const unsigned short day2, const unsigned short month2, const long year2);
...
if (date_Compare2Dates(18,9,1970,22,1,1994) == -1)
{
printf("<\n");
}
else
{
printf(">=\n");
}
...
compare = time_Compare2Times(hour1,min1,sec1,hour2,min2,sec2);
short time_Compare2Times(const unsigned short hour1, const unsigned short min1, const unsigned short sec1, const unsigned short hour2, const unsigned short min2, const unsigned short sec2);
...
if (time_Compare2Times(13,10,0,9,0,0) == -1)
printf("<\n");
else
printf(">=\n");
...
date_DateText(dt,text,lang,wc);
void date_DateText(const date_DateTexts dt, char *const text, const date_Languages lang, const date_WordClass wc);
...
char txt[20];
...
date_DateText(day,&txt,English,date_SINGULAR);
...
Available strings:
day,month,year,week,weekday,hour,minute,second,yesterday,today,tomorrow
There is no plural form available for: yesterday,today,tomorrow
There is no periodical form available for: yesterday,today,tomorrow,weekday
jd = date_DateToJD(day,month,year,calendar);
unsigned long date_DateToJD(const unsigned short day, const unsigned short month, const long year, const date_Calendars calendar);
...
jd = date_DateToJD(23,1,1994,date_Gregorian);
...
num = date_DateToNum(day,month,year);
long date_DateToNum(const unsigned short day, const unsigned short month, const long year);
...
num = date_DateToNum(28,6,1997);
...
days = date_DayDiff(day1,month1,year1,day2,month2,year2,calendar);
long date_DayDiff(const unsigned short day1, unsigned short month1, long year1, const unsigned short day2, unsigned short month2, long year2, const date_Calendars calendar);
long days;
...
days = date_DayDiff(18,9,1970,22,1,1994,date_Gregorian);
printf("Age of Kai Hofmann in days : %ld\n",days);
...
days = date_DaysAfterWeekday(day,month,year,weekday,calendar);
unsigned short date_DaysAfterWeekday(const unsigned short day, const unsigned short month, const long year, const date_Weekdays weekday, const date_Calendars calendar);
...
days = date_DaysAfterWeekday(22,1,1994,date_Thursday,date_Gregorian);
...
days = date_DaysBeforeWeekday(day,month,year,weekday,calendar);
unsigned short date_DaysBeforeWeekday(const unsigned short day, const unsigned short month, const long year, const date_Weekdays weekday, const date_Calendars calendar);
...
days = date_DaysBeforeWeekday(22,1,1994,date_Thursday,date_Gregorian);
...
date_DiffDateRange(day,month,year,days,months,years,dday,dmonth,dyear,calendar);
void date_DiffDateRange(const unsigned short day, const unsigned short month, const long year, long days, long months, long years, unsigned short *const dday, unsigned short *const dmonth, long *const dyear, const date_Calendars calendar);
void date_DiffDateRange(const unsigned short day, const unsigned short month, const long year, long days, long months, long years, unsigned short &dday, unsigned short &dmonth, long &dyear, const date_Calendars calendar);
...
date_DiffDateRange(23,1,1994,0,0,1,&dday,&dmonth,&dyear,date_Gregorian);
...
time_DiffTime(hour,min,sec,secs,rhour,rmin,rsec);
void time_DiffTime(const unsigned short hour, const unsigned short min, const unsigned short sec, long secs, unsigned short *const rhour, unsigned short *const rmin, unsigned short *const rsec);
...
time_DiffTime(12,19,0,2460,&hour,&min,&sec);
...
date_Easter(year,dday,dmonth,calendar);
void date_Easter(const long year, unsigned short *const dday, unsigned short *const dmonth, const date_Calendars calendar);
void date_Easter(const long year, unsigned short &dday, unsigned short &dmonth, const date_Calendars calendar);
...
date_Easter(1994,&dday,&dmonth,date_Gregorian);
...
date_FormatDate(fmt,day,month,year,lang,tstr,calendar);
void date_FormatDate(const char *const fmt, const unsigned short day, const unsigned short month, const long year, const date_Languages lang, char *const tstr, date_Calendars calendar);
char buffer[20];
...
date_FormatDate("%Y-%m-%d",10,3,1997,date_Locale,buffer,date_Heis);
/* "1997-03-10" */
...
Syntax of Amiga compatible % commands:
Syntax of % commands:
time_FormatTime(fmt,ChangeDay,ChangeHour,DST,hour,min,sec,zonemin,tstr);
void time_FormatTime(const char *const fmt, const enum time_ChangeDay ChangeDay, const unsigned short ChangeHour, const BOOL DST, const unsigned short hour, const unsigned short min, const unsigned short sec, const short zonemin, char *const tstr);
char buffer[20];
...
time_FormatTime("%H:%M:%S",time_Normal,2,0,14,57,0,-360,
buffer); /* "14:57:0" */
...
Syntax of Amiga compatible % commands:
Syntax of % commands:
datetime_GMTToLocal(gjd,gsecs,zonemin,ChangePrevDay,ChangeDay,ChangeNextDay,ChangeHour,ljd,lsecs,DST);
void datetime_GMTToLocal(const unsigned long gjd, const unsigned long gsecs, const short zonemin, const time_ChangeDay ChangePrevDay, const time_ChangeDay ChangeDay, const time_ChangeDay ChangeNextDay, const unsigned short ChangeHour, unsigned long *const ljd, unsigned long *const lsecs, BOOL *const DST);
void datetime_GMTToLocal(const unsigned long gjd, const unsigned long gsecs, const short zonemin, const time_ChangeDay ChangePrevDay, const time_ChangeDay ChangeDay, const time_ChangeDay ChangeNextDay, const unsigned short ChangeHour, unsigned long &ljd, unsigned long &lsecs, &DST);
unsigned long ljd,lsecs;
BOOL DST = TRUE;
...
datetime_GMTToLocal(2450919,30300,+60,time_Normal,time_Normal,time_Normal,2,&ljd,&lsecs,&DST);
...
days = date_GregorianDayDiff(day1,month1,year1,day2,month2,year2);
long date_GregorianDayDiff(const unsigned short day1, unsigned short month1, long year1, const unsigned short day2, unsigned short month2, long year2);
long days;
...
days = date_GregorianDayDiff(18,9,1970,22,1,1994);
printf("Age of Kai Hofmann in days : %ld\n",days);
...
days = date_GregorianDaysAfterWeekday(day,month,year,weekday);
unsigned short date_GregorianDaysAfterWeekday(const unsigned short day, const unsigned short month, const long year, const date_Weekdays weekday);
...
days = date_GregorianDaysAfterWeekday(22,1,1994,Thursday);
...
days = date_GregorianDaysBeforeWeekday(day,month,year,weekday);
unsigned short date_GregorianDaysBeforeWeekday(const unsigned short day, const unsigned short month, const long year, const date_Weekdays weekday);
...
days = date_GregorianDaysBeforeWeekday(22,1,1994,Thursday);
...
date_GregorianDiffDate(day,month,year,days,dday,dmonth,dyear);
void date_GregorianDiffDate(const unsigned short day, const unsigned short month, const long year, long days, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
...
date_GregorianDiffDate(23,1,1994,7,&dday,&dmonth,&dyear);
...
It is better to use this function only from 8 to 3200!
date_GregorianDiffDateRange(day,month,year,days,months,years,dday,dmonth,dyear);
void date_GregorianDiffDateRange(const unsigned short day, const unsigned short month, const long year, long days, long months, long years, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
void date_GregorianDiffDateRange(const unsigned short day, const unsigned short month, const long year, long days, long months, long years, unsigned short &dday, unsigned short &dmonth, long &dyear);
...
date_GregorianDiffDateRange(23,1,1994,0,0,1,&dday,&dmonth,&dyear);
...
date_GregorianEaster(year,dday,dmonth);
void date_GregorianEaster(const long year, unsigned short *const dday, unsigned short *const dmonth);
...
date_GregorianEaster(1994,&dday,&dmonth);
...
day = date_GregorianLastMonthDay(month,year);
unsigned short date_GregorianLastMonthDay(const unsigned short month, const long year);
...
day = date_GregorianLastMonthDay(1,1994); /* 31 */
...
leapyear = date_GregorianLeapYear(year);
BOOL date_GregorianLeapYear(const long year);
...
if (date_GregorianLeapYear(1994))
{
printf("leap year!\n");
}
else
{
printf("no leap year!\n");
}
...
days = date_GregorianMonthDays(month,year);
unsigned short date_GregorianMonthDays(const unsigned short month, const long year);
unsigned short days;
...
days = date_GregorianMonthDays(1,1994);
printf("Days of January 1994 : %hu\n",days);
...
ep = date_GregorianMoonAge(day,month,year);
unsigned short date_GregorianMoonAge(const unsigned short day, const unsigned short month, const long year);
...
ep = date_GregorianMoonAge(18,9,1994);
...
jd = date_GregorianMoonPhase(day,month,year,phase);
unsigned long date_GregorianMoonPhase(const unsigned short day, const unsigned short month, const long year, const MoonPhases phase);
...
jd = date_GregorianMoonPhase(18,9,1994,FullMoon);
date_JDToGregorian(jd,&day,&month,&year);
...
date_GregorianRangeDiff(day1,month1,year1,day2,month2,year2,days,months,years);
void date_GregorianRangeDiff(unsigned short day1, unsigned short month1, long year1, unsigned short day2, unsigned short month2, long year2, short *const days, short *const months, long *const years);
void date_GregorianRangeDiff(unsigned short day1, unsigned short month1, long year1, unsigned short day2, unsigned short month2, long year2, short &days, short &months, long &years);
short days,months;
long years;
...
date_GregorianRangeDiff(18,9,1970,25,1,1998,&days,&months,&years);
printf("Age of Kai Hofmann is : %ld years, %hd months, %hd days\n",years,months,days);
...
jd = date_GregorianToJD(day,month,year);
unsigned long date_GregorianToJD(const unsigned short day, const unsigned short month, const long year);
...
jd = date_GregorianToJD(23,1,1994);
...
weeknr = date_GregorianWeek(day,month,year);
unsigned short date_GregorianWeek(const unsigned short day, const unsigned short month, const long year);
...
weeknr = date_GregorianWeek(4,10,1582);
...
weekday = date_GregorianWeekday(day,month,year);
date_Weekdays date_GregorianWeekday(const unsigned short day, unsigned short month, long year);
...
weekday = date_GregorianWeekday(22,1,1994);
if (weekday == dayerr)
{
...
}
...
date_GregorianWWtoDM(weekday,week,year,dday,dmonth,dyear);
void date_GregorianWWtoDM(const date_Weekdays weekday, const unsigned short week, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
unsigned short day,month;
long year;
...
date_GregorianWWtoDM(date_Thursday,14,1997,&day,&month,&year);
/* 1997-04-03 */
...
days = date_GregorianYearDays(year);
unsigned short date_GregorianYearDays(const long year);
unsigned short days;
...
days = date_GregorianYearDays(1994);
printf("Days of 1994 : %hu\n",days);
...
jd = date_GSYearToJD(syear);
unsigned long date_GSYearToJD(const unsigned long syear);
...
jd = date_GSYearToJD(4800);
...
syear = date_GYearToScaliger(year);
unsigned long date_GYearToScaliger(const long year);
...
syear = date_GYearToScaliger(1994);
...
days = date_HeisDayDiff(day1,month1,year1,day2,month2,year2);
long date_HeisDayDiff(const unsigned short day1, unsigned short month1, long year1, const unsigned short day2, unsigned short month2, long year2);
long days;
...
days = date_HeisDayDiff(18,9,1970,22,1,1994);
printf("Age of Kai Hofmann in days : %ld\n",days);
...
days = date_HeisDaysAfterWeekday(day,month,year,weekday);
unsigned short date_HeisDaysAfterWeekday(const unsigned short day, const unsigned short month, const long year, const date_Weekdays weekday);
...
days = date_HeisDaysAfterWeekday(22,1,1994,Thursday);
...
days = date_HeisDaysBeforeWeekday(day,month,year,weekday);
unsigned short date_HeisDaysBeforeWeekday(const unsigned short day, const unsigned short month, const long year, const date_Weekdays weekday);
...
days = date_HeisDaysBeforeWeekday(22,1,1994,Thursday);
...
date_HeisDiffDate(day,month,year,days,dday,dmonth,dyear);
void date_HeisDiffDate(const unsigned short day, const unsigned short month, const long year, long days, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
...
date_HeisDiffDate(23,1,1994,7,&dday,&dmonth,&dyear);
...
It is better to use this function only from 8 to 8000!
date_HeisDiffDateRange(day,month,year,days,months,years,dday,dmonth,dyear);
void date_HeisDiffDateRange(const unsigned short day, const unsigned short month, const long year, long days, long months, long years, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
void date_HeisDiffDateRange(const unsigned short day, const unsigned short month, const long year, long days, long months, long years, unsigned short &dday, unsigned short &dmonth, long &dyear);
...
date_HeisDiffDateRange(23,1,1994,0,0,1,&dday,&dmonth,&dyear);
...
date_HeisEaster(year,dday,dmonth);
void date_HeisEaster(const long year, unsigned short *const dday, unsigned short *const dmonth);
...
date_HeisEaster(1994,&dday,&dmonth);
...
day = date_HeisLastMonthDay(month,year);
unsigned short date_HeisLastMonthDay(const unsigned short month, const long year);
...
day = date_HeisLastMonthDays(1,1994); /* 31 */
...
leapyear = date_HeisLeapYear(year);
BOOL date_HeisLeapYear(const long year);
...
if (date_HeisLeapYear(1994))
{
printf("leap year!\n");
}
else
{
printf("no leap year!\n");
}
...
days = date_HeisMonthDays(month,year);
unsigned short date_HeisMonthDays(const unsigned short month, const long year);
unsigned short days;
...
days = date_HeisMonthDays(1,1994);
printf("Days of January 1994 : %hu\n",days);
...
date_HeisRangeDiff(day1,month1,year1,day2,month2,year2,days,months,years);
void date_HeisRangeDiff(unsigned short day1, unsigned short month1, long year1, unsigned short day2, unsigned short month2, long year2, short *const days, short *const months, long *const years);
void date_HeisRangeDiff(unsigned short day1, unsigned short month1, long year1, unsigned short day2, unsigned short month2, long year2, short &days, short &months, long &years);
short days,months;
long years;
...
date_HeisRangeDiff(18,9,1970,25,1,1994);
printf("Age of Kai Hofmann is : %ld years, %hd months, %hd days\n",years,months,days);
...
jd = date_HeisToJD(day,month,year);
unsigned long date_HeisToJD(const unsigned short day, const unsigned short month, const long year);
...
jd = date_HeisToJD(23,1,1994);
...
weeknr = date_HeisWeek(day,month,year);
unsigned short date_HeisWeek(const unsigned short day, const unsigned short month, const long year);
...
weeknr = date_HeisWeek(4,10,1582);
...
weekday = date_HeisWeekday(day,month,year);
date_Weekdays date_HeisWeekday(const unsigned short day, unsigned short month, long year);
...
weekday = date_HeisWeekday(22,1,1994);
if (weekday == date_dayerr)
{
...
}
...
date_HeisWWtoDM(weekday,week,year,dday,dmonth,dyear);
void date_HeisWWtoDM(const date_Weekdays weekday, const unsigned short week, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
unsigned short day,month;
long year;
...
date_HeisWWtoDM(date_Thursday,14,1997,&day,&month,&year);
/* 1997-04-03 */
...
days = date_HeisYearDays(year);
unsigned short date_HeisYearDays(const long year);
unsigned short days;
...
days = date_HeisYearDays(1994);
printf("Days of 1994 : %hu\n",days);
...
jd = date_HSYearToJD(syear);
unsigned long date_HSYearToJD(const unsigned long syear);
...
jd = date_HSYearToJD(6700);
...
syear = date_HYearToScaliger(year);
unsigned long date_HYearToScaliger(const long year);
...
syear = date_HYearToScaliger(1994);
...
date_JDToDate(jd,day,month,year,calendar);
void date_JDToDate(const unsigned long jd, unsigned short *const day, unsigned short *const month, long *const year, const date_Calendars calendar);
void date_JDToDate(const unsigned long jd, unsigned short &day, unsigned short &month, long &year, const date_Calendars calendar);
...
date_JDToDate(2299161,&day,&month,&year,date_Gregorian);
...
date_JDToGregorian(jd,day,month,year);
void date_JDToGregorian(const unsigned long jd, unsigned short *const day, unsigned short *const month, long *const year);
...
date_JDToGregorian(2299161,&day,&month,&year);
...
date_JDToHeis(jd,day,month,year);
void date_JDToHeis(const unsigned long jd, unsigned short *const day, unsigned short *const month, long *const year);
...
date_JDToHeis(2299161,&day,&month,&year);
...
date_JDToJulian(jd,day,month,year);
void date_JDToJulian(const unsigned long jd, unsigned short *const day, unsigned short *const month, long *const year);
...
date_JDToJulian(2299160,&day,&month,&year);
...
mjd = date_JDtoMJD(jd);
unsigned long date_JDtoMJD(const unsigned long jd);
...
mjd = date_JDtoMJD(2449354);
...
time_JDToTime(jd,rhour,rmin,rsec);
void time_JDToTime(float jd, unsigned short *const rhour, unsigned short *const rmin, unsigned short *const rsec);
...
time_JDToTime(0.76543,&rhour,&rmin,&rsec);
...
jd = date_JSYearToJD(syear);
unsigned long date_JSYearToJD(const unsigned long syear);
...
jd = date_JSYearToJD(4800);
...
days = date_JulianDayDiff(day1,month1,year1,day2,month2,year2);
long date_JulianDayDiff(const unsigned short day1, unsigned short month1, long year1, const unsigned short day2, unsigned short month2, long year2);
long days;
...
days = date_JulianDayDiff(18,9,1970,22,1,1994);
printf("Age of Kai Hofmann in days : %ld\n",days);
...
days = date_JulianDaysAfterWeekday(day,month,year,weekday);
unsigned short date_JulianDaysAfterWeekday(const unsigned short day, const unsigned short month, const long year, const date_Weekdays weekday);
...
days = date_JulianDaysAfterWeekday(22,1,1994,Thursday);
...
days = date_JulianDaysBeforeWeekday(day,month,year,weekday);
unsigned short date_JulianDaysBeforeWeekday(const unsigned short day, const unsigned short month, const long year, const date_Weekdays weekday);
...
days = date_JulianDaysBeforeWeekday(22,1,1994,Thursday);
...
date_JulianDiffDate(day,month,year,days,dday,dmonth,dyear);
void date_JulianDiffDate(const unsigned short day, const unsigned short month, const long year, long days, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
...
date_JulianDiffDate(23,1,1994,7,&dday,&dmonth,&dyear);
...
It is better to use this function only from 8 to 1582!
date_JulianDiffDateRange(day,month,year,days,months,years,dday,dmonth,dyear);
void date_JulianDiffDateRange(const unsigned short day, const unsigned short month, const long year, long days, long months, long years, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
void date_JulianDiffDateRange(const unsigned short day, const unsigned short month, const long year, long days, long months, long years, unsigned short &dday, unsigned short &dmonth, long &dyear);
...
date_JulianDiffDateRange(23,1,1994,0,0,1,&dday,&dmonth,&dyear);
...
date_JulianEaster(year,dday,dmonth);
void date_JulianEaster(const long year, unsigned short *const dday, unsigned short *const dmonth);
...
date_JulianEaster(1994,&dday,&dmonth);
...
day = date_JulianLastMonthDay(month,year);
unsigned short date_JulianLastMonthDay(const unsigned short month, const long year);
...
day = date_JulianLastMonthDay(1,1994); /* 31 */
...
leapyear = date_JulianLeapYear(year);
BOOL date_JulianLeapYear(const long year);
...
if (date_JulianLeapYear(1994))
{
printf("leap year!\n");
}
else
{
printf("no leap year!\n");
}
...
days = date_JulianMonthDays(month,year);
unsigned short date_JulianMonthDays(const unsigned short month, const long year);
unsigned short days;
...
days = date_JulianMonthDays(1,1994);
printf("Days of January 1994 : %hu\n",days);
...
date_JulianRangeDiff(day1,month1,year1,day2,month2,year2,days,months,years);
void date_JulianRangeDiff(unsigned short day1, unsigned short month1, long year1, unsigned short day2, unsigned short month2, long year2, short *const days, short *const months, long *const years);
void date_JulianRangeDiff(unsigned short day1, unsigned short month1, long year1, unsigned short day2, unsigned short month2, long year2, short &days, short &months, long &years);
short days,months;
long years;
...
date_JulianRangeDiff(18,9,1970,25,1,1998,&days,&months,&years);
printf("Age of Kai Hofmann is : %ld years, %hd months, %hd days\n",years,months,days);
...
jd = date_JulianToJD(day,month,year);
unsigned long date_JulianToJD(const unsigned short day, const unsigned short month, const long year);
...
jd = date_JulianToJD(23,1,1994);
...
weeknr = date_JulianWeek(day,month,year);
unsigned short date_JulianWeek(const unsigned short day, const unsigned short month, const long year);
...
weeknr = date_JulianWeek(4,10,1582);
...
weekday = date_JulianWeekday(day,month,year);
date_Weekdays date_JulianWeekday(const unsigned short day, unsigned short month, long year);
...
weekday = date_JulianWeekday(4,10,1582);
if (weekday == dayerr)
{
...
}
...
date_JulianWWtoDM(weekday,week,year,dday,dmonth,dyear);
void date_JulianWWtoDM(const date_Weekdays weekday, const unsigned short week, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
unsigned short day,month;
long year;
...
date_JulianWWtoDM(date_Thursday,14,1997,&day,&month,&year);
/* 1997-04-03 */
...
days = date_JulianYearDays(year);
unsigned short date_JulianYearDays(const long year);
unsigned short days;
...
days = date_JulianYearDays(1994);
printf("Days of 1994 : %hu\n",days);
...
syear = date_JYearToScaliger(year);
unsigned long date_JYearToScaliger(const long year);
...
syear = date_JYearToScaliger(1582);
...
day = date_LastMonthDay(month,year,calendar);
unsigned short date_LastMonthDay(const unsigned short month, const long year, const date_Calendars calendar);
...
day = date_LastMonthDay(1,1994,date_Gregorian); /* 31 */
...
leapyear = date_LeapYear(year,calendar);
bool date_LeapYear(const long year, const date_Calendars calendar);
...
if (date_LeapYear(1994,date_Gregorian))
{
printf("leap year!\n");
}
else
{
printf("no leap year!\n");
}
...
secs = time_LMT(secs,meridian,pos);
unsigned long time_LMT(const unsigned long secs, const float meridiandegree, const float posdegree);
...
secs = time_LMT(76080,-15.0,-8.923055556);
...
datetime_LocalToGMT(ljd,lsecs,DSThours,zonemin,gjd,gsecs);
void datetime_LocalToGMT(const unsigned long ljd, const unsigned long lsecs, const short DSThours, const short zonemin, unsigned long *const gjd, unsigned long *const gsecs);
void datetime_LocalToGMT(const unsigned long ljd, const unsigned long lsecs, const short DSThours, const short zonemin, unsigned long &gjd, unsigned long &gsecs);
unsigned long ljd,lsecs;
...
datetime_LocalToGMT(2450919,37500,+1,+60,&gjd,&gsecs);
...
jd = date_MJDtoJD(mjd);
unsigned long date_MJDtoJD(const unsigned long mjd);
...
jd = date_MJDtoJD(49353);
...
days = date_MonthDays(month,year,calendar);
unsigned short date_MonthDays(const unsigned short month, const long year, const date_Calendars calendar);
unsigned short days;
...
days = date_MonthDays(1,1994,date_Gregorian);
printf("Days of January 1994 : %hu\n",days);
...
maxlen = date_MonthShortText(month,mtext,lang);
unsigned short date_MonthShortText(const unsigned short month, char *const mtext, const date_Languages lang);
...
char mtxt[4];
...
maxlen = date_MonthShortText(12,&mtxt,English);
...
maxlen = date_MonthText(month,mtext,lang);
unsigned short date_MonthText(const unsigned short month, char *const mtext, const date_Languages lang);
...
char mtxt[20];
...
maxlen = date_MonthText(12,&mtxt,English);
...
date_NextValidDate(day,month,year,dday,dmonth,dyear,calendar);
void date_NextValidDate(const unsigned short day, const unsigned short month, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear, const date_Calendars calendar);
void date_NextValidDate(const unsigned short day, const unsigned short month, const long year, unsigned short &dday, unsigned short &dmonth, long &dyear, const date_Calendars calendar);
...
date_NextValidDate(29,2,2000,&day,&month,&year,date_Gregorian);
...
date_NextValidGregorianDate(day,month,year,dday,dmonth,dyear);
void date_NextValidGregorianDate(const unsigned short day, const unsigned short month, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
...
date_NextValidGregorianDate(29,2,2000,&day,&month,&year);
...
date_NextValidHeisDate(day,month,year,dday,dmonth,dyear);
void date_NextValidHeisDate(const unsigned short day, const unsigned short month, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
...
date_NextValidHeisDate(29,2,2000,&day,&month,&year);
...
date_NextValidJulianDate(day,month,year,dday,dmonth,dyear);
void date_NextValidJulianDate(const unsigned short day, const unsigned short month, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
...
date_NextValidJulianDate(29,2,2000,&day,&month,&year);
...
date_NumToDate(num,day,month,year);
void date_NumToDate(long num, unsigned short *const day, unsigned short *const month, long *const year);
...
date_NumToDate(19970628,&day,&month,&year);
...
time_NumToTime(num,rhour,rmin,rsec);
void time_NumToTime(unsigned short num, unsigned short *const rhour, unsigned short *const rmin, unsigned short *const rsec);
...
time_NumToTime(123600,&rhour,&rmin,&rsec);
...
pos = date_ParseDate(fmt, dstr, lang, calendar, actualjd, day, month, year, pfmt, plang);
short date_ParseDate(const char *const fmt, const char *const dstr, const date_Languages lang, const date_Calendars calendar, const unsigned short actualjd, unsigned short *const day, unsigned short *const month, long *const year, char *const pfmt, date_Languages *const plang);
short date_ParseDate(const char *const fmt, const char *const dstr, const date_Languages lang, const date_Calendars calendar, const unsigned short actualjd, unsigned short *const day, unsigned short *const month, long *const year, char *const pfmt, date_Languages &plang);
short retval;
unsigned short day,month;
long year;
char pfmtbuf[20];
date_Languages lang;
...
retval = date_ParseDate("%Y-%m-%d","1997-04-03",date_Locale,date_Heis,2450809,&day,&month,&year,pfmtbuf,&lang);
...
Syntax of Amiga compatible % commands:
Syntax of % commands:
The date-string autodetection knows over 40 date-string formats:
| Parse pattern | Detection condition |
|---|---|
| (yesterday|today|tomorrow) | |
| wdn | |
| wdn[,] mmm d[ (yy|yyyy)] | |
| wdn[,] d[.][ ]mmm[,][ ][(yy|yyyy)] | |
| wdn[,] d[.][ ]m[.][ ][(yy|yyyy)] | |
| mmm d[ yyyy] | |
| mmm/d[/(yy|yyyy)] | |
| mmm-d[-(yy|yyyy)] | |
| yyyy[-]Www[-]n | |
| yyyy(-|/)m(-|/)d | |
| yyyy(-|/)n[n[n]] | |
| yy[-]Www[-]n | |
| yy-nnn | |
| d. mmm [(yy|yyyy)] | |
| d.m.[(yy|yyyy)] | |
| d-mmm[-(yy|yyyy)] | |
| d-m[-yyyy] | |
| yyyymmdd | ddmmyyyy | valid date test |
| jjjjjjj | yyyynnn | (1723980 >= JD <= 2914672) |
| JJJJJ | |
| JJJJJJ | yymmdd | (MJD <= 514671) |
| d-m-yy | yy-m-d | (yy > 31 | valid date test) |
| d/m[/yyyy] | m/d/yyyy | valid date test |
| d/m/yy | m/d/yy | yy/m/d | valid date test |
| Symbol explanation | |
| () | grouping |
| | | alternative |
| [] | option |
| d | day-number (1-2 digits) |
| dd | 2 digit day |
| n | 1 digit day within week (1-7 = Mon-Sun) |
| nnn | 3 digit day within year |
| ww | 2 digit week within year |
| m | month-number (1-2 digits) |
| mm | 2 digit month |
| yy | 2 digit year |
| yyyy | 4 digit year |
| JJJJJ | 5 digit MJD |
| JJJJJJ | 6 digit MJD |
| jjjjjjj | 7 digit JD |
| wdn | weekday name (long|short in any supported language!) |
| mmm | month-name (long|short in any support language!) to the short version you can add a '.' |
pos = time_ParseTime(fmt,tstr,ChangeDay,ChangeHour,DST,hour,min,sec,zonemin,pfmt);
short time_ParseTime(const char *const fmt, const char *const tstr, time_ChangeDay ChangeDay, unsigned short ChangeHour, BOOL *const DST, unsigned short *const hour, unsigned short *const min, unsigned short *const sec, short *const zonemin, char *const pfmt);
BOOL DST = FALSE;
unsigned short Hour,Min,Sec;
short ZoneMin = 60,retval;
char pfmtbuf[20];
...
retval = time_ParseTime(NULL,"20:14",time_Normal,2,&DST,&Hour,&Min,&Sec,&ZoneMin,pfmtbuf);
...
Syntax of Amiga compatible % commands:
Syntax of % commands:
date_PreviousValidDate(day,month,year,dday,dmonth,dyear,calendar);
void date_PreviousValidDate(const unsigned short day, const unsigned short month, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear, const date_Calendars calendar);
void date_PreviousValidDate(const unsigned short day, const unsigned short month, const long year, unsigned short &dday, unsigned short &dmonth, long &dyear, const date_Calendars calendar);
...
date_PreviousValidDate(29,2,2000,&day,&month,&year,date_Gregorian);
...
date_PreviousValidGregorianDate(day,month,year,dday,dmonth,dyear);
void date_PreviousValidGregorianDate(const unsigned short day, const unsigned short month, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
...
date_PreviousValidGregorianDate(29,2,2000,&day,&month,&year);
...
date_PreviousValidHeisDate(day,month,year,dday,dmonth,dyear);
void date_PreviousValidHeisDate(const unsigned short day, const unsigned short month, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
...
date_PreviousValidHeisDate(29,2,2000,&day,&month,&year);
...
date_PreviousValidJulianDate(day,month,year,dday,dmonth,dyear);
void date_PreviousValidJulianDate(const unsigned short day, const unsigned short month, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear);
...
date_PreviousValidJulianDate(29,2,2000,&day,&month,&year);
...
date_RangeDiff(day1,month1,year1,day2,month2,year2,days, months,years,calendar);
void date_RangeDiff(unsigned short day1, unsigned short month1, long year1, unsigned short day2, unsigned short month2, long year2, short *const days, short *const months, long *const years, const date_Calendars calendar);
void date_RangeDiff(unsigned short day1, unsigned short month1, long year1, unsigned short day2, unsigned short month2, long year2, short &days, short &months, long &years, const date_Calendars calendar);
short days,months;
long years;
...
date_RangeDiff(18,9,1970,25,1,1998,&days,&months,&years,date_Gregorian);
printf("Age of Kai Hofmann is : %ld years, %hd months, %hd days\n",years,months,days);
...
year = date_ScaligerYearToG(syear);
long date_ScaligerYearToG(const unsigned long syear);
...
year = date_ScaligerYearToG(6400);
...
year = date_ScaligerYearToH(syear);
long date_ScaligerYearToH(const unsigned long syear);
...
year = date_ScaligerYearToH(7000);
...
year = date_ScaligerYearToJ(syear);
long date_ScaligerYearToJ(const unsigned long syear);
...
year = date_ScaligerYearToJ(4800);
...
year = date_ScaligerYearToG(syear,calendar);
long date_ScaligerYearToG(const unsigned long syear, const date_Calendars calendar);
...
year = date_ScaligerYearToG(6400,date_Gregorian);
...
time_SecToTime(secs,hour,min,sec);
void time_SecToTime(unsigned long secs, unsigned short *const hour, unsigned short *const min, unsigned short *const sec);
...
time_SecToTime(76860,&hour,&min,&sec);
...
date_SetCountry(country);
void date_SetCountry(const date_Countries country);
...
date_SetCountry(unknown);
...
date_SetFirstWeekday(weekday);
void date_SetFirstWeekday(const date_Weekdays weekday);
...
date_SetFirstWeekday(Sunday);
...
year = date_SupplementCentury(year,actualyear);
long date_SupplementCentury(unsigned short year, long actualyear);
...
printf("%ld\n",SupplementCentury(01,1996));
...
jd = date_SYearToJD(syear,calendar);
unsigned long date_SYearToJD(const unsigned long syear, const date_Calendars calendar);
...
jd = date_SYearToJD(4800,date_Gregorian);
...
secs = time_TimeDiff(hour1,min1,sec1,hour2,min2,sec2);
long time_TimeDiff(const unsigned short hour1, const unsigned short min1, const unsigned short sec1, const unsigned short hour2, const unsigned short min2, const unsigned short sec2);
...
secs = time_TimeDiff(21,15,00,22,0,0);
...
jd = time_TimeToJD(hour,min,sec);
float time_TimeToJD(const unsigned short hour, const unsigned short min, const unsigned short sec);
...
jd = time_TimeToJD(16,33,0);
...
num = time_TimeToNum(hour,min,sec);
unsigned long time_TimeToNum(const unsigned short hour, const unsigned short min, const unsigned short sec);
...
num = time_TimeToNum(12,31,0);
...
secs = time_TimeToSec(hour,min,sec);
unsigned long time_TimeToSec(const unsigned short hour, const unsigned short min, const unsigned short sec);
...
secs = time_TimeToSec(21,15,00);
...
addhours = time_TimeZoneFactor(degrees);
short time_TimeZoneFactor(const short degree);
...
addhours = time_TimeZoneFactor(-8);
...
valid = date_ValidDate(day,month,year,calendar);
bool date_ValidDate(const unsigned short day, const unsigned short month, const long year, const date_Calendars calendar);
...
if (date_ValidDate(29,2,2000,date_Gregorian))
printf("ok\n");
else
printf("wrong date!!!\n");
...
valid = date_ValidGregorianDate(day,month,year);
BOOL date_ValidGregorianDate(const unsigned short day, const unsigned short month, const long year);
...
if (date_ValidGregorianDate(29,2,2000))
printf("ok\n");
else
printf("wrong date!!!\n");
...
valid = date_ValidHeisDate(day,month,year);
BOOL date_ValidHeisDate(const unsigned short day, const unsigned short month, const long year);
...
if (date_ValidHeisDate(29,2,2000))
printf("ok\n");
else
printf("wrong date!!!\n");
...
valid = date_ValidJulianDate(day,month,year);
BOOL date_ValidJulianDate(const unsigned short day, const unsigned short month, const long year);
...
if (date_ValidJulianDate(29,2,2000))
printf("ok\n");
else
printf("wrong date!!!\n");
...
valid = time_ValidTime(hour,min,sec);
BOOL time_ValidTime(const unsigned short hour, const unsigned short min, const unsigned short sec);
...
if (time_ValidTime(25,0,0))
printf("ok\n");
else
printf("wrong time!!!\n");
...
weeknr = date_Week(day,month,year,calendar);
unsigned short date_Week(const unsigned short day, const unsigned short month, const long year, const date_Calendars calendar);
...
weeknr = date_Week(4,10,1582,date_Gregorian);
...
weekday = date_Weekday(day,month,year,calendar);
date_Weekdays date_Weekday(const unsigned short day, unsigned short month, long year, const date_Calendars calendar);
...
weekday = date_Weekday(22,1,1994,date_Gregorian);
if (weekday == dayerr)
{
...
}
...
maxlen = date_WeekdayShortText(wday,wtext,lang);
unsigned short date_WeekdayShortText(const date_Weekdays wday, char *const wtext, const date_Languages lang);
...
char wtxt[3];
...
maxlen = date_WeekdayShortText(Monday,&wtxt,English);
...
maxlen = date_WeekdayText(wday,wtext,lang);
unsigned short date_WeekdayText(const date_Weekdays wday, char *const wtext, const date_Languages lang);
...
char wtxt[20];
...
maxlen = date_WeekdayText(Monday,&wtxt,English);
...
date_WWtoDM(weekday,week,year,dday,dmonth,dyear,calendar);
void date_WWtoDM(const date_Weekdays weekday, const unsigned short week, const long year, unsigned short *const dday, unsigned short *const dmonth, long *const dyear, const date_Calendars calendar);
void date_WWtoDM(const date_Weekdays weekday, const unsigned short week, const long year, unsigned short &dday, unsigned short &dmonth, long &dyear, const date_Calendars calendar);
unsigned short day,month;
long year;
...
date_WWtoDM(date_Thursday,14,1997,&day,&month,&year,date_Gregorian);
/* 1997-04-03 */
...
days = date_YearDays(year,calendar);
unsigned short date_YearDays(const long year, const date_Calendars calendar);
unsigned short days;
...
days = date_YearDays(1994,date_Gregorian);
printf("Days of 1994 : %hu\n",days);
...
syear = date_YearToScaliger(year,calendar);
unsigned long date_YearToScaliger(const long year, const date_Calendars calendar);
...
syear = date_YearToScaliger(1994,date_Gregorian);
...