为什么365这是一个8位数?

krs*_*013 0 fortran gfortran random-seed

看一下gfortran随机数发生器播种的示例代码,我对这里的时间转换感到困惑:

call date_and_time(values=dt)
tms = (dt(1) - 1970) * 365_8 * 24 * 60 * 60 * 1000 &
    + dt(2) * 31_8 * 24 * 60 * 60 * 1000 &
    + dt(3) * 24 * 60 * 60 * 60 * 1000 &
    + dt(5) * 60 * 60 * 1000 &
    + dt(6) * 60 * 1000 + dt(7) * 1000 &
    + dt(8)
t = transfer(tms, t)
Run Code Online (Sandbox Code Playgroud)

我很好奇,为什么36531_8尾.仔细查看,我发现这表示一个8位整数.为什么会在这里使用?我知道它只是一个随机种子,所以它并不重要,但为什么你会截断或修改365到8位值,而不是其他数字?这只是奇思妙想吗?有没有人对此有所了解?

更新:事实证明我很困惑_8意味着8位,实际上它意味着8个字节,我应该知道.是的.谢谢你让我直截了当.

Dav*_*nan 5

它不是8 ,而是8 字节.

当然,365不适合8位,这应该设置闹铃响.