C语言创建文件并以当前日期命名?

在学习C语言,碰到一个实际问题,便想把所学的用上,结果搜索了一下发现,实现起来好像并不简单,有没有更好的方法。

 #include <stdio.h>
#include <time.h>
int main()
{
    time_t timep;
    struct tm *p;
    time(&timep);
    p =localltime(&timep); //此函数获得的tm结构体的时间,是已经进行过时区转化为本地时间
    //p = gmtime(&timep); //把日期和时间转换为格林威治(GMT)时间的函数

    printf("Year:  %d\n", 1900+p->tm_year);
    printf("Month:  %d\n", 1+p->tm_mon);
    printf("Day:  %d\n", p->tm_mday);
    printf("Hour:  %d\n", p->tm_hour);
    printf("Minute:  %d\n", p->tm_min);
    printf("Second:  %d\n",  p->tm_sec);
    printf("Weekday:  %d\n", p->tm_wday);
    printf("Days:  %d\n", p->tm_yday);
    printf("Isdst:  %d\n", p->tm_isdst);
}

然后根据你需要的格式用wprintf得到文件名

windows平台下。

wprintf -> sprintf