Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
ramses
-2 / 0 / 0
Регистрация: 24.04.2011
Сообщений: 55
#1

Замер времени - C++

13.06.2011, 22:18. Просмотров 1245. Ответов 2
Метки нет (Все метки)

Работает через раз.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <conio.h>
#include <iostream>
#include <time.h>
#include <windows.h>
 
using namespace std;
 
int _tmain() {
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    
    int start, end;
    
    start = clock();
    cout << "Тест." << "\n";;
    end = clock();
    
    cout << start << " " << end << " " << end-start;
    
    _getch();
    
    return 0;
}
И ещё вопрос. Цитата из Википедии:

"CLOCKS_PER_SEC
Определяет количество тактов системных часов в секунду. Используется для пересчета величины, возвращаемой функцией clock(), в секунды."

У меня она равна 1000. Другими словами, clock() возвращает время в миллисекундах?

Добавлено через 6 минут
И как относится к этой величине: как к реальной скорости выполнения на конкретном оборудовании или к как нечто абстрактному?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.06.2011, 22:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Замер времени (C++):

Замер времени вычисления - C++
Предположим, я хочу определить время &quot;прокрутки&quot; цикла (или другого процесса). Я знаю два способа. первый - основан на измерении...

Осуществить замер времени for и while - C++
Здравствуйте! Условие задачи: Написать программу выводящее на экран любое текстовое сообщение 100 раз. Вывод осуществить с помощью for...

Замер времени выполнения функции на ядре - C++
Здравствуйте! Не могу понять почему не считает время выполнения алгоритма на ядре какие бы я значения z и x не вводила бы. Каждый раз время...

Замер времени выполнения программного кода - C++
Как замерить время выполнения этого программного кода (в секундах) и вывести его на экран? Как провести оптимизацию, чтобы время...

Замер времени работы функции через clock() - C++
Имеется некая функция, требуется замерить время её выполнения. Накидал такой код : #include &lt;iostream&gt; #include &lt;stdint.h&gt; ...

Замер времени(тактов процессора) выполнения процедуры - C++
Почему то замер дает отрицательный результат (при просмотре в режиме дебаг) и на выходе 0 в итоге. clock_t start, end; start =...

2
schdub
2952 / 1297 / 239
Регистрация: 19.01.2009
Сообщений: 3,409
Завершенные тесты: 1
13.06.2011, 22:30 #2
clock() возвращает приблизительное значение времени работы вызывающей программы. чтобы преобразовать в секунды его нужно разделить на CLOCK_PER_SEC.
0
ramses
-2 / 0 / 0
Регистрация: 24.04.2011
Сообщений: 55
13.06.2011, 22:48  [ТС] #3
Такой вариант работает без проблем.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <conio.h>
#include <iostream>
#include <time.h>
#include <windows.h>
 
using namespace std;
 
int _tmain() {
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    
    int start, end;
    
    cout << "Нажмите Enter для начала замера, а затем и для выхода из него." << "\n";
    getch();
    
    start = clock();
    getch();
    end = clock();
    
    cout << "Прошло времени: " << end-start << " мс.";
    
    getch();
    
    return 0;
}
Добавлено через 1 минуту
Это я понимаю, для чего она нужна. Только почему первый sketch работает через раз?

Добавлено через 2 минуты
Ведь вывод в консоль не настолько уж мгновенен..
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.06.2011, 22:48
Привет! Вот еще темы с ответами:

Софтварный замер напряжения - C++
Здравствуйте. Прошу помочь с одной несколько странной проблемой. Поискал в интернетах - ничего толком не увидел. Есть задача - сделать...

Замер выполнения отрезка кода в микросекундах - C++
Подскажите, в с++ 11 #include &lt;chrono&gt; есть возможность ставить на паузу код в различной мере, в плоть до тиков. А можно ли замереть...

Замер количества тактов исполнения через rdtsc() - C++
по идее rdtsc(); выдает кол-во тактов, т.е. т2-т1 выдаст затраченное кол-во тактов на том или ином участке кода, но ... #include...

Проверка на правильность времени, и показ времени - C++
Подскажите, что нужно возвращать в функцию bool is_correct(TIME t); и как эту функцию коректности времени всунуть в функцию void...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru