更快的memcpy

先做个对比

#define SMARTCOPY memcpy(destination,source,65536);
#define DUMBCOPY for(i=0;i<65536;i++) \
                         destination[i]=source[i]

main(){
    char source[65536],destination[65536];
    int i,j;
    for(j=0;j<100;j++)
        //SMARTCOPY;
        DUMBCOPY;
}

GCC 分为两种编译,
1、注释SMARTCOPY,打开DUMPCOPY
2、注释DUMBCOPY,打开SMARTCOPY

linux下实测结果

1、打开SMARTCOPY
root@tracing017-> time ./a.out

real    0m0.003s
user    0m0.001s
sys     0m0.002s
2、打开DUMBCOPY
root@tracing017-> time ./a.out

real    0m0.032s
user    0m0.030s
sys     0m0.002s

猜你喜欢

转载自blog.csdn.net/jxhaha/article/details/71124358