2013-06-13 2 views
0

не удалось найти ответ на google.C-эквивалент PHP `date ('YmdHis')`

Есть ли эквивалент в C для PHP date('YmdHis') выхода:

20130613153516

Спасибо!

+0

Что делать и именно хотите? тот же результат, что и u, приведенный в 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; 
} 

Выход как:

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; 
}