Implement strcpy and memcpy functions by yourself without library functions.

Source: Internet
Author: User

Implement strcpy and memcpy functions by yourself without library functions

1. Code Implementation

Char * strcpy (char * strdest, const char * strsrc)
{
Assert (strdest! = NULL & strsrc! = NULL );
Char * strtmpd = strdest;
While (* strtmpd ++ = * strsrc ++ )! = '0 ')
{
}
Return strdest;
}

Void * memcpy (void * pdest, const void * psrc, unsigned int size)
{
Assert (pdest! = NULL & psrc! = NULL );
Byte * ptmpd = (byte *) pdest;
Byte * ptmps = (byte *) psrc;
While (size --> 0)
{
* Ptmpd ++ = * ptmps ++;
}
Return pdest;
}

2. Differences between strcpy and memcpy

(1). strcpy can only be used for string copying, while memcpy is a memory copy that can copy any type of data.

(2) When both strings are copied, strcpy completes the string ending with '/0', while memcpy only copies the original memory, no matter what it encounters.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.