C++中计算程序的运行时间

对于简单的控制台程序,可使用clock(),表示程序开始执行到现在经过的时间,在要计算时间的代码前后添加如下代码即可(需要包含头文件<time.h>):
clock_t start, finish;
 double totaltime;
 start=clock();

//code

finish=clock();
 totaltime=(double)(finish-start)/CLOCKS_PER_SEC; //得到结果单位秒,如果时间太短太短的话可能是0
 std::cout<<totaltime<<"\n";

也可以调用win32API函数GetTickCount(),

 DWORD   dwStart   =   GetTickCount();
     //代码......... 
    DWORD   dwStop   =   GetTickCount();   
    DWORD   dwInterval   =   dwStop   -   dwStart;

posted @ 2010-10-23 14:00 oliver 阅读(991) | 评论 (1)编辑 收藏

for循环优化:数组求和

今天诺西笔试的一道题,代码段如下:
int a[1000][100];
long sum = 0;
for(int i = 0; i < 100; i ++)
  for(int j = 0; j < 1000; j ++)
  sum += a[j][i];

按照林锐的《高质量c++编程》中所说,小循环在外,大循环在里,那不用再优化了?
网上也有人说,根据数组在内存中的存放格式,按先行后列会更快?
求高手解答!

posted @ 2010-10-23 13:19 oliver 阅读(1839) | 评论 (4)编辑 收藏

仅列出标题
共2页: 1 2 
<2024年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

导航

统计

常用链接

留言簿

随笔档案

文章分类

文章档案

个人专栏

技术网站

搜索

最新评论

阅读排行榜

评论排行榜