#include <sys/time.h>
#include <time.h>
struct timespec stime = {0}, etime = {0};
//开始时间为空时,取得开始时间
if(stime.tv_sec == 0)
{
if (clock_gettime(CLOCK_REALTIME, &stime) < 0) {
SHOW_ERROR(“clock_gettime[errno=%d]\n”, errno);
}
}
//取得结束时间
else if (clock_gettime(CLOCK_REALTIME, &etime) < 0) {
SHOW_ERROR(“clock_gettime[errno=%d]\n”, errno);
} else {
double time = (etime.tv_sec - stime.tv_sec);
//取得结束时间成功,并且大于开始时间10秒的场合
if(time >= 10)
{
int i;
FILE *fp;
fp = fopen(“/mnt/num.txt”, “a”);
if (fp == NULL) {
}
struct tm *ltm;
ltm = localtime(&etime);
fprintf(fp, “#time %04d/%02d/%02d-%02d-%02d-%02d\n”,
ltm->tm_year + 1900,
ltm->tm_mon + 1,
ltm->tm_mday ,
ltm->tm_hour,
ltm->tm_min,
ltm->tm_sec);
for(i=0; i<NUM; i++)
{
fprintf(fp, “%d\t”, i);
}
fprintf(fp, “\n”);
fclose(fp);
//开始时间变更为结束时间
stime.tv_sec = etime.tv_sec;
}
}
Linux C 每10秒追加写文件+输出当前系统时间
于 2023-10-12 10:05:07 首次发布