嗨,我需要帮助解决这个错误在下面的C代码。错误是
error: storage size of 't0' isn't known
error: storage size of 't1' isn't known
我包括以下内容
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void timer ( void (*f) (), char letter){ //function used to calculate average runtime
int i = 0;
struct timeval t0;
struct timeval t1;
gettimeofday(&t0,0);//takes start time
for (i = 0; i < 100; i++){
f(); // runs function
}
gettimeofday(&t1,0); //takes end time
long seconds = t1.tv_sec - t0.tv_sec;
long microseconds = (t1.tv_usec - t0.tv_usec);
seconds = (1000000)*seconds + microseconds;
// printf("Total time elapsed for workload %c: %d in microseconds\n", letter, seconds );
printf("Average time elapsed for workload %c: %d %d/%d in microseconds\n", letter, seconds/100, seconds%100, 100 );//prints the average time as a whole number and then a fraction
}
发布于 2021-01-29 06:12:12
struct timeval
的定义存在于time.h
中,因此您必须包含这个标头。
#include <sys/time.h> //you don't include this header
时间h:
struct timeval {
time_t tv_sec; // Number of whole seconds of elapsed time
long int tv_usec; // Number of microseconds of rest of elapsed time minus tv_sec. Always less than one million
};
https://stackoverflow.com/questions/65949537
复制相似问题