2010-07-23 5 views
0

Влияния clock_t во времени.h, выпущенные с Turbo C++ v1.01, хороши только до 0,0545XX секунд, что означает, что любое время, которое я хочу сделать с более высокой точностью, невозможно с этой библиотекой.Временное разрешение Turbo C++ до миллисекунд

Мне было интересно, знал ли кто-нибудь о хорошей библиотеке или методе, доступной старшему TurboC++, который я мог бы использовать вместо time.h, для лучшей точности?

+0

Вам нужно сказать, в какой операционной системе вы работаете. Если вы запускаете приложение DOS в «dos-box» Windows, вы обнаружите, что время очень плохое, независимо от того, какие средства предлагает ваш язык/библиотеки. –

ответ

-1

Используйте Windows QueryPerformanceCounter (и QueryPerformanceFrequency).

+0

Не из Turbo C. Это 32-битные функции API. –

+0

Да, я не заметил версию TurboC ... – pascal

1

Является ли это древним Turbo C++ для DOS? Я признаю это число как 1/18 секунды секундомера по умолчанию DOS.

Вы можете ускорить работу таймера, но вам придется написать процедуру прерывания, которая перехватывает этот таймер и передает только некоторые из прерываний. Или вы получите странное поведение из других частей DOS. У меня есть код для этого где-нибудь, который я могу выкопать.

+1

Если OP просто нужно измерить короткие времена, он может сделать это, просто прочитав регистраторы таймера (правильно учя для упаковки). Таким образом, нет необходимости возиться с ISR. –

+0

Хорошо, это, наверное, путь. – pjc50

Смежные вопросы