C/C++ For循环语句的效率测试优化及运行时错误:Stack Overflow的解决办法

本文探讨了C/C++中For循环的效率优化,建议在多重循环中将最长循环置于最内层,以减少CPU跨层次数。同时,文章提及在Windows Server 2008 x64系统上,使用Microsoft Visual C++ SP6编译时遇到的运行时错误——Stack Overflow,并提示了相应的解决办法。
摘要由CSDN通过智能技术生成

C/C++ For循环语句的效率测试优化及运行时错误:Stack Overflow的解决办法


在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的
循环放在最外层,以减少CPU跨切循环层的次数。


使用以下代码对嵌套For循环的效率进行测试验证:

// For嵌套性能.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream>   
#include <time.h>   
using namespace std;  

int main(void)  
{  
	clock_t cstart,cends;  
	
	cstart=clock();
	
	long sum1 =0;
	long a1[5][10000000];
	
	for(long i = 0; i < 5; i++)                
	{
		for(long j = 0; j < 10000000; j++)
		{
			sum1 += a1[i][j];
		}
	}
	
	cout << "sum1=:" << sum1 << endl;
	
	cends=clock();  
	
	cout << "Clock时间差:" << cends-cstart << endl; 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值