1. 程式人生 > 其它 >自定義函式my_strcpy字串拷貝的相關程式碼的優化

自定義函式my_strcpy字串拷貝的相關程式碼的優化

 

#include<stdio.h>
my_strcpy(char* dest, char* src)
{
    while (*src != '\0')
    {
        *dest = *src;
        dest++;
        src++;
    }
    *dest = *src;//跳出迴圈後,將src中的'\0'也複製到dest中
}
int main()
{
    char arr1[] = "###############";
    char arr2[] = "bit";
    my_strcpy(arr1, arr2);
    printf(
"%s\n", arr1); return 0; }
View Code

 

#include<stdio.h>
my_strcpy(char* dest, char* src)
{
    if(dest!=NULL&&src!=NULL)
    {
            while (*dest++ = *src++)
    {
        ; 
    }
    
    }
}
int main()
{
    char arr1[] = "###############";
    char arr2[] = "bit";
    my_strcpy(arr1, arr2);
    printf(
"%s\n", arr1); return 0; }
View Code

 

#include<stdio.h>
#include<assert.h>
char* my_strcpy(char* dest,const char* src)
{
    char* ret = dest;
    assert(dest != NULL);
    assert(src != NULL);
    while (*dest++ = *src++)
    {
        ;
    }
    return ret;
}
int main()
{
    
char arr1[] = "###############"; char arr2[] = "bit"; printf("%s\n", my_strcpy(arr1, arr2)); return 0; }
View Code