utils/SSEphem/astrtime.cc
int load_iers_data()
{
    char line[100];
    int ln = 0;
    while ((fgets(line, 99, iers_stream) != NULL) &&
                                          (ln < MAX_NUM_IERS_OFFSETS)) {
        //  MJD      x       y     UT1 - UTC
        // 50060  -.12288  .12426  -.389102
        if (sscanf(line,"%ld %lf %lf %lf",
                   &iers[ln].mjd, &iers[ln].x, &iers[ln].y,
                   &iers[ln].ut1_offset) < 4) {
            printf ("Error reading dates in IERS file '%s', line %d\n",
                    iers_file, ln + 1);
            return 0;
        }
        ln++;
    }
    if (ln == MAX_NUM_IERS_OFFSETS) {
        printf ("May have exceeded the IERS file length limit\n");
        printf (" of %d lines.  Recompile 'astrtime.cc'n",
                MAX_NUM_IERS_OFFSETS);
    }
    num_iers_offsets = ln;
    return ln;
}
// This routine loads the IERS data structure, iers[], from the ascii
// IERS file.  If successful, it returns the number of entries, otherwise it
// returns 0.  The ascii file format is
// 50070 -0.1566  0.1483 -0.40088
// 50075 -0.1709  0.1621 -0.41367
// 50080 -0.1841  0.1770 -0.42633
// 50083 -0.1882  0.1839  0.56874 <<<<<< leap second
// 50085 -0.1961  0.1929  0.56115
// 50090 -0.2068  0.2096  0.54873
//      :               :                 :
// The MJD must be the first field on each line, and the x and y pole
// offsets are next, and the fourth column is UT1-UTC.  Comments after the
// fourth column are ignored.  Note that there must be an entry for the MJD
// of a leap second to allow a proper transition across this discontinuity.
// All values are for 0 hours of the MJD given.  The entry interval shown is
// 5 days, but this may be shorter or longer as required by the accuracy of
// a linear interpolation between two entries.
This routine loads the IERS data structure, iers[], from the ascii
IERS file.  If successful, it returns the number of entries, otherwise it
returns 0.
This routine loads the IERS data structure iers [] from the ascii IERS file . If successful it returns the number of entries otherwise it returns 0 .
int load_iers_data()
{
    char line[100];
    int ln = 0;
    while ((fgets(line, 99, iers_stream) != NULL) &&
                                          (ln < MAX_NUM_IERS_OFFSETS)) {
        if (sscanf(line,"%ld %lf %lf %lf",
                   &iers[ln].mjd, &iers[ln].x, &iers[ln].y,
                   &iers[ln].ut1_offset) < 4) {
            printf ("Error reading dates in IERS file '%s', line %d\n",
                    iers_file, ln + 1);
            return 0;
        }
        ln++;
    }
    if (ln == MAX_NUM_IERS_OFFSETS) {
        printf ("May have exceeded the IERS file length limit\n");
        printf (" of %d lines.  Recompile 'astrtime.cc'n",
                MAX_NUM_IERS_OFFSETS);
    }
    num_iers_offsets = ln;
    return ln;
}
int load_iers_data ( ) { char line [ 100 ] ; int ln = 0 ; while ( ( fgets ( line , 99 , iers_stream ) != NULL ) && ( ln < MAX_NUM_IERS_OFFSETS ) ) { if ( sscanf ( line , " " , & iers [ ln ] . mjd , & iers [ ln ] . x , & iers [ ln ] . y , & iers [ ln ] . ut1_offset ) < 4 ) { printf ( " \n " , iers_file , ln + 1 ) ; return 0 ; } ln ++ ; } if ( ln == MAX_NUM_IERS_OFFSETS ) { printf ( " \n " ) ; printf ( " " , MAX_NUM_IERS_OFFSETS ) ; } num_iers_offsets = ln ; return ln ; }
This routine loads the IERS data structure, iers[], from the ascii
IERS file.
This routine loads the IERS data structure iers [] from the ascii IERS file .
//  MJD      x       y     UT1 - UTC // 50060  -.12288  .12426  -.389102