www.pudn.com > linuxsocket.rar > my_strcpy.c
#include#include char *my_strcpy(char *strDest, const char *strSrc) { char *p_return = strDest; // 检查参数指针是否为空 if (strDest == NULL || strSrc == NULL) { fprintf(stderr, "NULL POINT!"); return NULL; } while ( (*strDest++ = *strSrc++) != '\0') ; return p_return; } int main() { char string1[32]; char string2[32]; int c; int i = 0; printf("please input your string:"); // 对输入字符串的长度进行检查 while ( ( (c = getchar()) != '\n' ) && (c != EOF) && (i < 31) ) { string2[i] = c; i++; } string2[i] = '\0'; // 对返回值也进行合法性检查 if (my_strcpy(string1, string2) == NULL) { fprintf(stderr, "return from my_strcpy"); exit(1); } printf("string1:%s\n", string1); printf("string2:%s\n", string2); return 0; }