如何在C中从struct tm转换为long int?

时间:2012-05-04 14:55:35

标签: c linux

这是一个简单的问题......有没有办法将struct tm ct;转换为长整数?这是我的代码的样子:

struct tm ct;
    scanf("%d", &ct.tm_sec);
    scanf("%d", &ct.tm_min);    
    scanf("%d", &ct.tm_hour);
    scanf("%d", &ct.tm_mday);
    scanf("%d", &ct.tm_mon);
    scanf("%d", &ct.tm_year);

2 个答案:

答案 0 :(得分:11)

您可以使用mktime()函数将struct tm转换为time_t,这是一个整数值。

答案 1 :(得分:0)

你想得到一个time_t,它表示自1970年1月1日00:00:00以来的秒数

使用mktime():

time_t mktime(struct tm * timeptr);

http://www.cplusplus.com/reference/clibrary/ctime/mktime/