У меня есть что-то вроде этого:почему C часов() возвращает 0
clock_t start, end;
start=clock();
something_else();
end=clock();
printf("\nClock cycles are: %d - %d\n",start,end);
и я всегда получаю в качестве выхода «такты: 0 - 0»
Любая идея, почему это происходит ?
(Просто для того, чтобы дать небольшую деталь, функция something_else() выполняет экспоненциацию слева направо с использованием представления montgomery, более того, я точно не знаю, что функция something_else() действительно занимает некоторое неменьшее время.)
Это на Linux. Результат uname -a является:
Linux snowy.*****.ac.uk 2.6.32-71.el6.x86_64 #1 SMP Fri May 20 03:51:51 BST 2011 x86_64 x86_64 x86_64 GNU/Linux
Какую операционную систему вы используете? – trojanfoe
Я только что отредактировал вопрос, чтобы добавить эту деталь! –
'clock_t', вероятно, не является' int', поэтому '% d' не подходит. См. Этот вопрос: http://stackoverflow.com/questions/1083142/whats-the-correct-way-to-use-printf-to-print-a-clock-t. –