Я получаю пару странных ошибок компиляции. Это для домашнего задания (помощь в порядке). Идея состоит в том, чтобы реализовать программу, которая проверяет, насколько хорошо пользователь может нажать «ввод» раз в секунду. Я должен использовать gettimeofday, чтобы получить некоторые значения времени для каждого «входа», а затем узнать, что такое среднее время и стандартное отклонение... Я пытаюсь сделать это, проверив стандартный ввод для «\ n», а затем, если true, используя gettimeofday для заполнения структуры timeval, а затем сохраняя указанную структуру в массиве для последующего использования...
Ошибки, которые я получаю при компиляции (gcc -Wextra homework1.c
):
homework1.c: In function ‘main’:
homework1.c:19:29: error: expected ‘]’ before ‘;’ token
homework1.c:27:17: error: expected ‘)’ before ‘;’ token
homework1.c:32:4: error: ‘entry_array’ undeclared (first use in this function)
homework1.c:32:4: note: each undeclared identifier is reported only once for each function it appears in
Я не понимаю, почему я получаю эти первые две синтаксические ошибки, а затем я не могу понять, почему «entry_array» не объявлен, когда я явно объявляю его в начале «main». Предложения?
Я чувствую, что обжигаюсь, не зная, как использовать структуру timeval... Сначала я пытался определить структуру timeval глобально, как и любую другую структуру, но получал ошибку о перезаписи определения для структуры timeval. Это потому, что он определен в библиотеке "sys/time.h"?
Вот код:
GNU nano 2.2.6 File: homework1.c
//prototypes
int GetAverage(long array[]);
int GetStdDev(long array[]);
//# of keystrokes tracked by user
#define MAX_STROKES 1;
int main(int argv, char ** argc) {
struct timeval entry_array[MAX_STROKES]; //container for tv_usec fields from timeval struct
double average = 0;
double std_deviation = 0;
int count = 0;
printf("This program will test your ability to hit enter every 1 second, for 10 seconds. Ready when yo$
//loop to build array of timeval's
while (count < MAX_STROKES) {
struct timeval time_val;
int input = getc(stdin);
if (input == '\n') {
gettimeofday(&time_val, NULL);
entry_array[count] = time_val;
++count;
}
}
return 0;
}