strcpy()函式自實現
阿新 • • 發佈:2019-01-06
strcpy() 這個函式應該是每個人經常用到的了,今天,我們就自己來實現一下這個函式
int main(void) { char arr1[20]; char arr2[] = "hello world!"; //char *arr2 = NULL; my_strcpy(arr1, arr2); printf("%s", arr1); system("pause"); return 0; }
如上,先把整體的框架定好,接著開始寫my_strcpy函式如上,註釋已經很詳細了。值得一提的是,assert() 這個咚咚,它叫做斷言,指的是當它的條件為假時,程式會崩潰,然後給出提示資訊,可以很好的幫我們除錯程式!為了用這個斷言,我們要包含上它的標頭檔案: #include <assert.h> !char * my_strcpy(char * dest, const char * src) //const使src不能做左值,防止while裡dest和src寫反 { char *ch = dest; assert(dest != NULL); //斷言幫助除錯 assert(src != NULL); while (*dest++ = *src++) //while最簡 ; return dest; //鏈式訪問 printf("%s", my_strcpy(dest, src)); }