char?*strcpy(char?*des,?const?char?*src){
???????assert((des?!=?NULL)?&&?(src?!=?NULL));
???????char?*add?=?des;
???????while?((*des++?=?*src++)?!=?‘\0’)?;
return?des;
}
?
void??*memcpy(void?*pvTo,?const?void?*pvFrom,?size_t?size)?{
???????assert((pvTo?!=?NULL)?&&?(pvFrom?!=?NULL));??????//?使用斷言
???????byte?*pbTo?=?(byte?*)?pvTo;?????????//?防止改變pvTo的地址
???????byte?*pbFrom?=?(byte?*)?pvFrom;?//?防止改變pvFrom的地址
???????while(size?--?>?0?

??????????????*pbTo?++?=?*pbFrom?++?;
???????return?pvTo;
}