【发布时间】:2017-12-30 18:41:30
【问题描述】:
我想知道一个 C/C++ 程序为某个输入文件生成输出需要多少时间。
通常,我制作一个 txt 或其他格式的输入文件,然后生成一个 txt 或任何其他格式的输出文件。 例如:
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
//take input and give output
//fclose(stdin);
//fclose(stdout);
return 0;
}
我运行程序,它会在控制台窗口上显示执行时间。但我不确定这是否是了解执行时间的最准确方法。
我需要知道某个输入文件的程序的执行时间,以便为某个学校级别的编程竞赛中的编程问题设置时间限制。
【问题讨论】:
-
使用profiler。
-
如果您没有分析器,std::chrono 可以提供帮助:en.cppreference.com/w/cpp/chrono 查看底部的示例。
-
您可以在程序开始时启动计时器并在结束时停止。只需在某处保存或显示时间值并检查即可。
-
哪种语言,C 或 C++?他们有不同的库来获取时钟时间和分析。
-
我听说过很多关于这个“C/C++”的东西,它有什么作用?