发布网友 发布时间:2022-04-23 22:32
共3个回答
热心网友 时间:2023-08-18 19:23
不太明白你c写的转换为c++的意思,.c写的本来就可以直接复制到.cpp作为c++代码进行编译
利用time.h 获取时间是c/c++的标准方法,也就是说,这样写出来的代码,windows和linux都能用;
而system("time")不是c++专用的方法,c语言也可以用,它本质就是在命令行cmd输入命令time 一样,只能显示出结果,无法获得返回值。我估计你是因为这个无法写入文件。
我推荐你是用timer.h来获取时间
给你一段代码参考吧,可以获取当前的时间(c/c++都可以):
#include<time.h>
time_t timeSec=time (NULL); //获取1970.1.1至当前秒数time_t
struct tm * timeinfo= localtime ( &timeSec );//创建TimeDate,并转化为当地时间,
//struct tm * timeinfo = gmtime ( &timeSec ); //创建TimeDate,并转化为GM时间,
printf ( "The current date/time is: %s\n", asctime (timeinfo) );
//获取年 月 日 时 分 秒 对应的int值:
printf("%d-%d-%d %d:%d:%d\n",timeinfo->tm_year+1900,timeinfo->tm_mon+1,timeinfo->tm_mday,timeinfo->tm_hour,timeinfo->tm_min,timeinfo->tm_sec);
---------------------------------------------------------------------
有了上面的时间获取方法,要写入文件也是很简单的了:
FILE *fp=fopen("xxx.txt","w");
fprintf(fp, "%d-%d-%d %d:%d:%d\n",timeinfo->tm_year+1900,timeinfo->tm_mon+1,timeinfo->tm_mday,timeinfo->tm_hour,timeinfo->tm_min,timeinfo->tm_sec);追问
输出结果是"2014-12-23 12:25"
为什么"systime.wHour"不能显示正确的小时?现在是20点,输出是12点,其余都正常显示!
热心网友 时间:2023-08-18 19:24
system("time >myfile.txt");
So easy! 很简单的吗
追问输出结果是"2014-12-23 12:25"
为什么"systime.wHour"不能显示正确的小时?现在是20点,输出是12点,其余都正常显示!
热心网友 时间:2023-08-18 19:24
你这C++用的cmd命令啊。。
不过你可以这么写
system("date /t>>d:\1.txt &time /t >>d:\1.txt")
然后修改文件。。。追问
输出结果是"2014-12-23 12:25"
为什么"systime.wHour"不能显示正确的小时?现在是20点,输出是12点,其余都正常显示!