运行环境:WinXP VS2005(VC8)
核心代码:
#include <iostream>
using namespace std ;
#include <time.h>

#define WAN (10000)
const int iNum = WAN*WAN*3;


void fun2(int* p)
{
    for( int i = 0 ; i < iNum ; i+= 4  )
    {
        p[i] = i;
        p[i+1] = i+1;
        p[i+2] = i+2;
        p[i+3] = i+3 ;
    }
}

void fun3(int* p)
{
    for( int i = 0 ; i < iNum ; i+= 8 )
    {
        p[i] = i;
        p[i+1] = i+1;
        p[i+2] = i+2;
        p[i+3] = i+3 ;
        p[i+4] = i+4 ;
        p[i+5] = i+5 ;
        p[i+6] = i+6 ;
        p[i+7] = i+7 ;

    }
}

测试程序一:
void main()
{
    int * p = new int[iNum];
    int x1 = time(NULL);
    fun2(p);
    int x2 = time(NULL);
    fun3(p);
    int x3 = time(NULL);
    cout << (long)(x2-x1) << "秒 " << (long)(x3-x2) << "秒";
    delete [] p ;
}
五次的运行结果:
4,3
3,3
3,3
4,2
3,3

测试程序三(fun3在前,fun2在后):
2,3
2,4
2,3
3,3
2,3

总的来说fun3 比fun2快,但平均不到1秒。
posted on   闻缺陷则喜何志丹  阅读(16)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~



点击右上角即可分享
微信分享提示