【C語言】strcpy函式的模擬實現
阿新 • • 發佈:2021-02-04
技術標籤:c語言
函式介紹
char * strcpy ( char * destination, const char * source );
函式實現
#include<stdio.h>
#include<assert.h>
char* my_strcpy(char* des, const char* sou)
{
char* tmp = des;
assert(NULL != des);//斷言,判斷指標的有效性,防止野指標
assert(NULL != sou);
while (*des++ = *sou++)
{
;
}
return tmp;
}
int main()
{
char arr1[] = "##############";
char arr2[] = "hehe";
printf("arr1:%s\n", my_strcpy(arr1,arr2));
return 0;
}
幾點說明
- 返回型別為char * 的原因
直接返回目的地陣列的首元素地址,方便直接使用。
- const修飾char* sou的原因
防止錯誤寫成把目的地字串內容拷貝到源頭字串去。如果寫錯了,編譯器會報錯。