C -> Strcpy vs Memcpy for copying a string

Advertisemen

Was wondering which was quicker - strcpy is nearly twice as fast as memcpy:


#include <stdio.h>
#include <string.h>
#include <time.h>

int main(void)
{
       time_t start;
       int strcpytime,memcpytime;
       int testnum = 100000000;
       int i;
       char *in,out[12];
       in = "STRING_test";

       //memcpy
       start = clock();
       for (i=0;i<testnum;i++)
              memcpy(out,in,strlen(in)+1);

       printf("memcpy time: %dms\n",clock()-start);

       //strcpy
       start = clock();
       for (i=0;i<testnum;i++)
              strcpy(out,in);

       printf("strcpy time: %dms\n",clock()-start);

       return 0;
}

Advertisemen

Disclaimer: Gambar, artikel ataupun video yang ada di web ini terkadang berasal dari berbagai sumber media lain. Hak Cipta sepenuhnya dipegang oleh sumber tersebut. Jika ada masalah terkait hal ini, Anda dapat menghubungi kami disini.

Tidak ada komentar:

Posting Komentar

© Copyright 2017 Game Engine Tutorial