#include <iostream>
#include <stack>
#include <ctime>
std::stack<clock_t> tictoc_stack;
void tic() {
tictoc_stack.push(clock());
}
void toc() {
std::cout << "Time elapsed: "<< ((double)(clock() - tictoc_stack.top())) / CLOCKS_PER_SEC
<< std::endl;
tictoc_stack.pop();
dif=(clock() - tictoc_stack.top())
}
int main()
{
tic();
for (k=0;k<10;k++)
{
doSomething();
toc();
double t[10];
for(i=0;i<10;i++)
{
t[i]=dif;
std::cout<< "array is" << dif << std::endl;
}
}
return 0;
}
Теперь, когда я звоню toc()
func это дает прошедшее время. но я хочу, чтобы это время входило в массив на каждой итерации. Это означает, что у меня будет 10 разных прошедших времени, и я хочу получить эти значения и рассчитать среднее, минимальное, максимальное и стандартное отклонение.
До сих пор мне трудно получить истекший срок хранения в массиве каждый раз, когда цикл повторяется.
Любые предложения и помощь.
Вы tic()
один раз, что означает, что вы push
один раз. Но ты toc()
несколько раз, что означает, что вы pop
многократно.
Других решений пока нет …