Поскольку это может быть домашний вопрос, я не дам вам никакого кода, но я дам вам объяснение, почему он не работает, и подход к использованию, чтобы он работал.
Когда вы работаете с простыми старыми типами данных (целые, двойные), вы можете делить. Однако временной интервал - это не просто старый тип данных - это комбинация двух в структуре. структуры timevals не знают, как делить на целые числа (это то, что это означает, когда говорит invalid operands to binary / (have ‘struct timeval’ and ‘int’)
).
Таким образом, вы должны сделать это вручную - разделите количество секунд (tv_sec), затем разделите количество наносекунд (tv_usec) и вставьте результаты этих делений обратно в ваш my_time_quotient
временной интервал. Обработка доли секунд оставлена читателю как упражнение, но подход, предложенный Хитом, - это один из подходов.