目前,我正在运行以下代码
int main() {
while(1)
{
time_t current = time(NULL);
cout << ctime(¤t)<< endl;
}
}
我的输出如下:
Sun Jan 15 00:03:25 2017
Sun Jan 15 00:03:25 2017
由于小时为00,分钟为03,秒为25.我想将00存储在某个整数变量中,让我们在变量中说 int hrs ,03 int min 和变量 int sec 中的25。怎么做?
答案 0 :(得分:0)
如果您想有时间查找__TIMESTAMP__
变量。它应该是这样的:12 Sat 16 12:00:00
答案 1 :(得分:0)
您想要的功能是localtime
。
此函数获取time_t
的地址并返回指向struct tm
的指针,其中包含分为年,月,日,小时,分钟和秒的日期和时间。
来自man page:
struct tm *localtime(const time_t *timep);
localtime()
功能会将日历时间timep
转换为 分解时间表示,相对于用户表示 指定的时区。该函数就像调用tzset(3
)和 使用有关当前的信息设置外部变量tzname
时区,时区与Coordinated Universal的区别 时间(UTC)和本地标准时间(以秒为单位)和日光到a 如果夏令时规则适用于某些部分,则非零值 那一年。返回值指向静态分配的struct
可能会被后续调用任何日期和 时间功能。
struct tm
的定义如下:
struct tm {
int tm_sec; /* seconds */
int tm_min; /* minutes */
int tm_hour; /* hours */
int tm_mday; /* day of the month */
int tm_mon; /* month */
int tm_year; /* year */
int tm_wday; /* day of the week */
int tm_yday; /* day in the year */
int tm_isdst; /* daylight saving time */
};