Я пытаюсь запустить следующий фрагмент кода, взятый из этого простого примера таймер:
#include <sys/time.h>
#include <stdio.h>
int SetTimer(struct timeval &tv, time_t sec) {
gettimeofday(&tv, NULL);
tv.tv_sec += sec;
return 1;
}
int CheckTimer(struct timeval &tv, time_t sec) {
struct timeval ctv;
gettimeofday(&ctv, NULL);
if ((ctv.tv_sec > tv.tv_sec)) {
gettimeofday(&tv, NULL);
tv.tv_sec += sec;
return 1;
} else {
return 0;
}
}
int main() {
struct timeval tv;
SetTimer(tv, 5); //set up a delay timer
printf("start counting.\n");
while (1)
if (CheckTimer(tv, 5) == 1)
printf("Welcome to cc.byexamples.com\n");
return 0;
}
Я получаю следующую ошибку: поле tv_sec
не может быть разрешено
Я искал его в Интернете, но никто, кажется, не дает конкретного ответа.
Я попытался изучить библиотеки sys/time.h
и time.h
, но ни в одной из них эта структура не определена, но все равно используется.
Я пропустил какую-либо библиотеку? Поскольку этот пример довольно старый, изменилось ли что-то, что нужно сделать по-другому? Я был бы признателен за любое зрелище.
PS: я использую Eclipse CDT Indigo под Ubuntu 11.10 и g++ 4.6.1.
>
на>
из-за проблемы с копированием и вставкой). - person Keith Thompson   schedule 23.08.2013