C语言数组清空的几种方法比较
生活随笔
收集整理的這篇文章主要介紹了
C语言数组清空的几种方法比较
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一下結(jié)果是在ubuntu12.04中測(cè)試的到的,機(jī)器速度比較慢,我覺這有這樣才可以最大化的發(fā)現(xiàn)
每一種方法所用的時(shí)間。更加明確的看到各種方法的時(shí)間差。
#define MAX 1024
方法一 使用時(shí)間:94s
for( k = 0 ; k <10000 ; k++ ) for( i = 0 ; i<MAX; i++ ) for( j = 0;j < MAX; j++ ) a[i][j] = 0;
方法二 使用時(shí)間:488s
for( k = 0 ; k <? 10000??; k++ ) for( i = 0 ; i<MAX; i++ ) for( j = 0;j < MAX; j++ ) a[j][i] = 0;
方法三 使用時(shí)間:74s
int *p; for( k = 0 ; k <? 10000??; k++ ) { p=&a[0][0]; for( i = 0 ; i<MAX; i++ ) {
for( j = 0;j < MAX; j++ ) *p++ = 0; } }
方法四 使用時(shí)間:69s
int *p; for( k = 0 ; k <? 10000??; k++ ) { for( i = 0 ; i<MAX; i++ ) { p = &a[i]; for( j = 0;j < MAX; j++ ) *p++ = 0; } }
方法五 使用時(shí)間:509s
int *p; for( k = 0 ; k <? 10000??; k++ ) { for( i = 0 ; i<MAX; i++ ) { p = &a[i][0]; for( j = 0;j < MAX; j++ ) *p++ = 0; } }
r- 方法六 使用時(shí)間:1s
for( k = 0 ; k <? 10000??; k++ ) { memset( a , 0 , ( MAX * MAX * sizeof(int) ) ); } 與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖
#define MAX 1024
方法一 使用時(shí)間:94s
for( k = 0 ; k <10000 ; k++ ) for( i = 0 ; i<MAX; i++ ) for( j = 0;j < MAX; j++ ) a[i][j] = 0;
方法二 使用時(shí)間:488s
for( k = 0 ; k <? 10000??; k++ ) for( i = 0 ; i<MAX; i++ ) for( j = 0;j < MAX; j++ ) a[j][i] = 0;
方法三 使用時(shí)間:74s
int *p; for( k = 0 ; k <? 10000??; k++ ) { p=&a[0][0]; for( i = 0 ; i<MAX; i++ ) {
for( j = 0;j < MAX; j++ ) *p++ = 0; } }
方法四 使用時(shí)間:69s
int *p; for( k = 0 ; k <? 10000??; k++ ) { for( i = 0 ; i<MAX; i++ ) { p = &a[i]; for( j = 0;j < MAX; j++ ) *p++ = 0; } }
方法五 使用時(shí)間:509s
int *p; for( k = 0 ; k <? 10000??; k++ ) { for( i = 0 ; i<MAX; i++ ) { p = &a[i][0]; for( j = 0;j < MAX; j++ ) *p++ = 0; } }
r- 方法六 使用時(shí)間:1s
for( k = 0 ; k <? 10000??; k++ ) { memset( a , 0 , ( MAX * MAX * sizeof(int) ) ); } 與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖
總結(jié)
以上是生活随笔為你收集整理的C语言数组清空的几种方法比较的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 变量的调用方法_java类变量
- 下一篇: 老生常谈,正确使用memset