strcpy庫函數的原型:
// 把src字符串拷貝到dest,並返回dest char *strcpy(char *dest, const char *src)
注意點:
1、形參src用const修飾,防止函數內部修改源字符串。
2、返回char*用於鏈式表達式,例如strlen(strcpy)。
3、不使用其他庫函數,例如strlen。
4、形參判空,代碼健壯性。
5、使用assert,盡可能在開發階段發現問題。
6、如果dest == src,直接返回,省掉遍歷賦值的代價。
7、結束符'\0'不能漏掉。
char *myStrcpy(char *dest, const char *src) { assert(dest != NULL && src != NULL); if (dest == NULL || src == NULL) { return NULL; } if (dest == src) { return dest; } int i = 0; while (src[i] != '\0') { dest[i] = src[i]; i++; } dest[i] = '\0'; return dest; }