/*
memset void memset(void s, int c, size_t n);
主要应用是初始化某个内存空间。用是在一段内存块中填充某个给定的值,一般为0,它对较大的结构体或数组进行清零操作的一种最快方法
memcpy extern memcpy(char dest, const char src, size_t count);
是用于copy源空间的数据到目的空间中。
strcpy extern char *strcpy(char *dest,char *src);
只能用于字符串copy,遇到‘/0’,将结束。
*/
void* memcpy(char* dest, const char* src, size_t count) {
if (dest == nullptr || src == nullptr || dest<= count+src) {
return nullptr;
}
char* destTemp = dest;
const char * srcTemp = src;
while (count--) {
*(dest++) = *(src++);
}
return dest;
}
char* strcpy2(char* dest, const char* src) {
if (dest == nullptr || src == nullptr) {
return nullptr;
}
char* destTemp = dest;
while (*src != '\0') {
*destTemp++ = *src++;
}
return destTemp;
}
int main()
{
int a[12];
memset(a, 0, sizeof(a));//这边不写0会出错
char dest[10]="1";
const char* src = "da";
strcpy2(dest+1, src);//1da
system("pause");
}