type
TimeStamp = packed record
DateValid,
TimeValid : Boolean;
Year : Integer;
Month : 1 .. 12;
Day : 1 .. 31;
DayOfWeek : 0 .. 6; { 0 means Sunday }
Hour : 0 .. 23;
Minute : 0 .. 59;
Second : 0 .. 61; { to allow for leap seconds }
MicroSecond: 0 .. 999999;
TimeZone : Integer; { in seconds east of UTC }
DST : Boolean;
TZName1,
TZName2 : String (32);
end;
The TimeStamp record holds all the information about a
particular time. You can get the current time with
GetTimeStamp and you can get the date or time in a printable
form using the Date and Time functions.
TimeStamp is an ISO 10206 Extended Pascal extension. The fields DateValid, TimeValid, Year, Month, Day, Hour, Minute, Second are required by Extended Pascal, the other ones are GNU Pascal extensions.
program TimeStampDemo;
var
t: TimeStamp;
begin
GetTimeStamp (t);
WriteLn ('DateValid: ', t.DateValid);
WriteLn ('TimeValid: ', t.TimeValid);
WriteLn ('Year: ', t.Year);
WriteLn ('Month: ', t.Month);
WriteLn ('Day: ', t.Day);
WriteLn ('DayOfWeek (0 .. 6, 0=Sunday): ', t.DayOfWeek);
WriteLn ('Hour (0 .. 23): ', t.Hour);
WriteLn ('Minute (0 .. 59): ', t.Minute);
WriteLn ('Second (0 .. 61): ', t.Second);
WriteLn ('MicroSecond (0 .. 999999): ', t.MicroSecond);
WriteLn ('TimeZone (in seconds east of UTC): ', t.TimeZone);
WriteLn ('DST: ', t.DST);
WriteLn ('TZName1: ', t.TZName1);
WriteLn ('TZName2: ', t.TZName2);
WriteLn;
WriteLn ('Date is: ', Date (t));
WriteLn ('Time is: ', Time (t));
end.