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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
htx
-169 / 2 / 0
Регистрация: 21.09.2013
Сообщений: 126
#1

Подсчет времени работы программы - C++

08.03.2014, 13:37. Просмотров 1498. Ответов 6
Метки нет (Все метки)

пожалуйста помогите посчитать время программы с функцией.не знаю почему программа выдает что-то странное,вместо сложения,а время пишет 0.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<iostream>
#include<windows.h>
using namespace std;
int c(int a,int b);
int main(){
    int start = GetTickCount();
    c(1, 3);
    cout << c<<endl;
    int end = GetTickCount();
    cout << end - start << endl;
    system("pause");
}
int c(int a,int b){
    return a + b;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.03.2014, 13:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подсчет времени работы программы (C++):

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

Реализовать подсчет числа пи по представленной формуле с измерением времени работы в секундах - C++
Реализовать подсчет числа пи по представленной формуле с измерением времени работы в секундах.

Ограничение по времени работы программы - C++
Всем доброго времени суток. Есть задача: Программа (любая) должна позволять пользоваться ей на любом компьютере три дня а после...

Уменьшение времени работы программы - C++
Добрый вечер. Решил задачу, и решил прогнать по ********. Программа заваливается по времени выполнения, выходит 2.5 секунд, в идеале должно...

Подсчет времени выполнения процедуры - C++
Такой вопрос- необходимо получить время выполнения процедуры сортировки массива. Для этого я использовал следующее выражение void...

Подсчет времени через QueryPerformanceCounter - C++
Есть класс массив, есть функции сортировки: вставками, выбором, пузырьком и т.д. Нужно реализовать функцию для подсчета времени роботы...

6
recoder
130 / 130 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
08.03.2014, 13:42 #2
Вот пример:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <ctime>
 
int main() {
 
    clock_t time;
    time = clock();
    for (int i = 0; i < 100; i++)
    time = clock() - time;
    std::cout << time << std::endl;
 
    std::cin.get();
    return 0;
}
2
-=ЮрА=-
Заблокирован
Автор FAQ
08.03.2014, 15:43 #3
Цитата Сообщение от htx Посмотреть сообщение
пожалуйста помогите посчитать время программы с функцией.не знаю почему программа выдает что-то странное,вместо сложения,а время пишет 0.
- потому что минимальный квант времени в таймере Windows 1 мсек (это самый минимальный квант), в самой справке от мелкософта
http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx написано
The resolution of the GetTickCount function is limited to the resolution of the system timer, which is typically in the range of 10 milliseconds to 16 milliseconds. The resolution of the GetTickCount function is not affected by adjustments made by the
Вычисление же а + b проходит за сотые или даже тысячные доли милисекунды, засечь это обычным АПИ нельзя
2
htx
-169 / 2 / 0
Регистрация: 21.09.2013
Сообщений: 126
08.03.2014, 17:10  [ТС] #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<iostream>
#include<windows.h>
using namespace std;
int c(int a,int b);
int main(){
    int start = GetTickCount();
    c(1, 3);
    cout << c<<endl;
    int end = GetTickCount();
    cout << end - start << endl;
    system("pause");
}
int c(int a,int b){
    return a + b;
}
а когда время работы программы с функцией вычисляем,то считаем время выполнения только в main?или в функции тоже?
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
08.03.2014, 17:10 #5
htx, под Windows можно использовать вот это:
Кликните здесь для просмотра всего текста
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
27
28
29
30
31
32
#include <windows.h>
#include <iostream>
 
double  PCFreq = 0.0;
int64_t CounterStart = 0;
 
void StartCounter()
{
    LARGE_INTEGER li;
    if(!QueryPerformanceFrequency(&li))
        std::cout << "QueryPerformanceFrequency failed!\n";
 
    PCFreq = double(li.QuadPart)/1000.0;
 
    QueryPerformanceCounter(&li);
    CounterStart = li.QuadPart;
}
double GetCounter()
{
    LARGE_INTEGER li;
    QueryPerformanceCounter(&li);
    return double(li.QuadPart-CounterStart)/PCFreq;
}
 
int main()
{
    StartCounter();
    // do some things
    double time = GetCounter();
    std::cout << time;
    return 0;
}
1
htx
-169 / 2 / 0
Регистрация: 21.09.2013
Сообщений: 126
08.03.2014, 17:24  [ТС] #6
не работает в студии

Добавлено через 8 минут
ладно,все решил.тему можно закрывать....
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
08.03.2014, 17:41 #7
Цитата Сообщение от htx Посмотреть сообщение
не работает в студии
Работает.
Замени int64_t на __int64.
0
08.03.2014, 17:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.03.2014, 17:41
Привет! Вот еще темы с ответами:

Подсчет времени выполнения функции - C++
Делаю 2 вида сортировки, не знаю как подсчитать их время. #include &lt;iostream&gt; #include &lt;time.h&gt; #include &lt;conio.h&gt; using namespace...

Подсчет времени выполнения сортировки - C++
Подскажите, пожалуйста, как написать в программе, чтобы подсчитывало время выполнения сортировки? Там как-то надо ввести &quot;clock time&quot; ...

UnixPosix, не ври мне! (неправильный подсчет времени вручную) - C++
Проблема следующая - реализовал я нуля перевод из posix в человечную дату. А тут проблема появилась: ввожу 54588753952 в свою программу,...

Оценка времени работы - C++
Можете оценить время работы алгоритма? http://acm.timus.ru/problem.aspx?space=1&amp;num=1100 - это задача, на которую он проходит По моему...


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

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

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