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;
/////////////////////////////////////////////////////////////////
cstart=clock();
long sum =0;
long a[10000000][5];
for(i = 0; i < 10000000; i++)
{
for(long j = 0; j < 5; j++)
{
sum += a[i][j];
}
}
cout << "sum=:" << sum << endl;
cends=clock();
cout << "Clock时间差:" << cends-cstart << endl;
//////////////////////////////////////////////////////////////
system("pause");
return 0;
}
运行结果:
以上代码在Windows Server 2008 x64 系统上编译通过,
IDE为:Microsoft Visual c++ sp6
可以编译通过,但是运行会出现错误:
运行时错误:Stack Overflow的解决办法:
分享到:
相关推荐
Stack Overflow Developer Survey 2016 Results Stack Overflow开发者调查报告 印象笔记版,无印象笔记请别下载
关于缓冲区(Stack overflow)溢出的资料
知名技术博客作家、Stack Overflow创始人Jeff Atwood有三十多年的职业编程经验,通过他的切身经历分享,帮助读者成长为高效能程序员。 会议是浪费工作时间的最佳去处 今天你开了多少个会?这个星期呢?这个月呢?再...
C标准库源代码,能提高对C的理解,不错的哦 下载文件列表 Pack : clibsource.rar C 标准库源代码\ABORT.C C标准库源代码\ABS.C C标准库源代码\ACCESS.C C标准库源代码\ADJUSTFD.C C标准库源代码\ALGRITHM C标准库源...
在 Stack Overflow 中搜索您最近的错误消息。 您可以使用安装软件包,如下所示: # install.packages("devtools") devtools::install_github("dgrtwo/tracestack") 加载它 library(tracestack) 然后在收到错误...
Stack Overflow小数据集(含问题和标签,训练集10万条,验证集3万条,测试集2万条,tsv格式)。
C++栈类模板 template class Stack { public: Stack(void); void Push(const T &item;); //将元素item压入栈 T Pop(void); //将栈顶元素弹出栈 void ClearStack(void); T Peek(void)const; //访问栈顶元素 ...
Stack Overflow
欢迎使用 Jam, Stack Overflow的模式库。 这种设计框架可以让我们的团队为更快的速度提供视觉统一、方向和语法方向。 它是由 、 和。 它由 Stack Overflow Design 在 Stack Overflow Careers 开发团队的支持下维护...
C语言头文件 STACKC语言头文件 STACKC语言头文件 STACKC语言头文件 STACKC语言头文件 STACKC语言头文件 STACKC语言头文件 STACKC语言头文件 STACKC语言头文件 STACKC语言头文件 STACKC语言头文件 STACKC语言头文件 ...
软件漏洞分析入门 相关附件 stack_overflow_exec
你最需阅读的一本编程书籍(其实编程书留下这本就够了!)
这是一个使用C++封装的Stack模板类,在VC++6.0环境下测试通过。栈的元素类型支持int,float,double,char也支持字符串。请多指正。
基于深度学习的Stack Overflow问题帖分类方法.pdf
一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, ...
该项目已被取代,不太可能看到更多改进或错误修正。变色龙Chameleon 是一个从采样声誉的简单服务。 它从 MongoDB 集合中获取用户列表,收集这些用户的信誉分数,并将它们保存回 MongoDB 集合。先决条件 ,在您的本地...
改名为Borland C++for Windows, 2. 3.1版配合Windows 3.1版,增加多媒体(Multi-Media)、笔(Pen)和MCI (Media Control Interface)之控制接口。 3. 新增Win Spector I具程序,此工具程序是当Windows程序发生General ...
Stack Overflow年度开发者调查(2011-2020年) https://insights.stackoverflow.com/survey/
图示介绍此存储库提供了用于构建Stack Overflow共享图标库的创作工具。 这是我们的一般工作流程: 打开以修改现有图标,或添加一个新图标。 请密切注意新添加的画板的名称。 这将确定您的SVG的文件名。 将每个画板/...
用c++模版实现的stack类,供初学者学习。 template ,int N> class Stack { public: Stack(); ~Stack(); void push(T t); T pop(); bool isEmpty(); private: T *m_pT; const int m_maxSize; ...