_daylight、_dstbias、_timezone 和 _tzname 在某些时间和日期例程中用来调整本地时间。 这些全局变量因安全性更高的函数版本(它们取代了全局变量)而被弃用。
| 全局变量 | 等效函数 |
|---|---|
_daylight |
_get_daylight |
_dstbias |
_get_dstbias |
_timezone |
_get_timezone |
_tzname |
_get_tzname |
在 Time.h 中按如下方式声明它们。
语法
extern int _daylight;
extern int _dstbias;
extern long _timezone;
extern char *_tzname[2];
备注
在调用 _ftime、localtime 或 _tzset 时,_daylight、_dstbias、_timezone 和 _tzname 的值由 TZ 环境变量的值确定。 如果未显式设置 TZ 的值,_tzname[0] 和 _tzname[1] 分别包含“PST”和“PDT”的默认设置。 时间操作函数(_tzset、_ftime 和 localtime)尝试通过在操作系统中查询每个变量的默认值来设置 _daylight_dstbias 和 _timezone 的值。 下表显示了时区全局变量的值。
| 变量 | 值 |
|---|---|
_daylight |
如果在 TZ 中指定或从操作系统确定夏令时 (DST) 时区,则为非零值;否则为 0。 默认值为 1。 |
_dstbias |
夏令时的偏移量。 |
_timezone |
协调世界时和本地时间之间的差异(以秒为单位)。 默认值为 28,800。 |
_tzname[0] |
派生自 TZ 环境变量的时区名称。 默认值是“PST”。 |
_tzname[1] |
派生自 TZ 环境变量的 DST 时区名称。 默认值为“PDT”(太平洋夏令时)。 |