主要是通过库函数和结构体获取当前系统时间(年月日和时分秒)保存到变量里,然后通过格式化输出函数将当前系统时间输出到文件中去。
但是需要注意的是题目要求每隔 1 s对系统时间进行输出,所以需要加入 sleep()函数进行调整 ,而且如果加入 sleep() 函数还想要输出数据到文件中的话是必须要在每一次输出数据后刷新缓冲区的。
#include
#include
#include
int main(int argc, char *argv[])
{
FILE *fp;
time_t current_time;
struct tm *local_time;
if((fp = fopen("test.txt", "w")) == NULL)
{
perror("fopen");
}
int i = 0;
while (1)
{
time(¤t_time);
local_time = localtime(¤t_time);
int year = local_time->tm_year + 1900;
int month = local_time->tm_mon + 1;
int day = local_time->tm_mday;
int hour = local_time->tm_hour;
int minute = local_time->tm_min;
int second = local_time->tm_sec;
i++;
printf("%d-%d-%d %d:%d:%d\n", year, month, day, hour, minute, second);
fprintf(fp, "%d, %d-%d-%d %d:%d:%d\n", i, year, month, day, hour, minute, second);
fflush(fp);
sleep(1);
}
return 0;
}