Linux系统中使用printf打印时间戳信息

在代码调试中,经常需要已添加一些时间戳信息,尤其是在查camera帧率的时候,通过可计算

时间间隔估算帧率。

在Linux系统中使用printf打印时间戳,代码如下:

void getDataTime(char *ptime) { 
    struct tm *tm_t;
    struct timeval time;
    
    gettimeofday(&time,NULL);
    tm_t = localtime(&time.tv_sec);
    if(NULL != tm_t) {
        sprintf(ptime,"%04d-%02d-%02d %02d:%02d:%02d.%03ld",
            tm_t->tm_year+1900,
            tm_t->tm_mon+1, 
            tm_t->tm_mday,
            tm_t->tm_hour, 
            tm_t->tm_min, 
            tm_t->tm_sec,
            time.tv_usec/1000);
    }
    
    return;
}

调用:

int main(void) { 
    char nowTime[256] = {0};
    getDataTime((char *)nowTime)
	printf("time: %s",nowTime);
	return 0;

输出的log:

2023-05-23 17:30:05.345

你可能感兴趣的:(树莓派开发实践,linux,c++)