void my_strcpy(char*dest,const char*src)//const 有防止把长的字符串拷贝到短的字符窜中,若发生这 种情况程序会崩溃。
{
assert(dest != NULL);//若为空指针无法解引用,强行操作代码无法运行
assert(src != NULL);
while (*dest++ = *src++)//先赋值再加加,当src = ‘\0’,赋值表达式的值为其asc码值0(因为赋的是‘\0’的按asc码值),
//此时不进入循环,而且我们已经完成了赋值。
{
; //该循环不需要执行什么,用空语句
}
}
int main()
{
char a[] = "abcdef";
char b[40] = { 0 };
my_strcpy(b, a);
printf("%s", b);
return 0;
}
04-11
457