2013-06-13 30 views
0

在google上找不到答案。C等同于PHP`date('YmdHis')`

是否有下PHP date('YmdHis')输出等价物:

20130613153516

谢谢!

+0

什么ü真正想要?你在C中输出的结果是一样的吗? – Omkant

+0

是的,相同的输出。 – bsteo

+0

请尝试按照下面的建议回答...看看strftime()..... http://linux.die.net/man/3/strftime – Omkant

回答

4

您可以使用strftime函数c来达到相同的功能。

#include <stdio.h> 
#include <time.h> 

int main() 
{ 
    time_t x; 
    time(&x); 
    struct tm *tmptr = localtime(&x); 
    char buf[1000]; 

    strftime(buf, sizeof(buf), "%Y%m%d%I%M%S", tmptr); 
    printf("%s\n", buf); 

    return 0; 
} 

输出是这样的:根据我的本地时间ofcourse

20130613051142 

3

这是一个完整的小例子:

#include <stdio.h> 
#include <time.h> 

#define MAX 1024 

int main(int argc, char ** argv) { 
    char buffer[MAX]; 
    time_t t; 

    t = time(NULL); 

    strftime(buffer, MAX, "%Y%m%d%I%M%S", localtime(&t)); 
    printf("%s\n", buffer); 

    return 0; 
}