memset( )
在函数memset(void *A,int B,int C);语句中,程序完成了将A指针指向的内容开始往后的C个字节内容置为B。
例如下列函数,最终结果是:cps数组内容为:2222222222
void main(void){int cps[10]={0};memset(cps,2,10);printf("cps数组内容为:");for(int i=0;i<10;i++)printf("%d ",cps[i]);putchar('/n');}
memset()一般情况是用于初始化使用的,它可以给一个内存块赋一个值。
memcpy()
这是一个拷贝函数,当使用strcpy()无法拷贝内容时,可以通过memcpy直接拷贝整个内存。
memcpy(A,B,C);的作用是将B中前C个字节的内容拷贝至A。
例子
void main(void)
{int a1[] = { 1,2,3,4,5,6,7,8,9,10 };int a2[10] = { 0 };memcpy(a2, a1, 20);printf("a2数组的内容是:");for (int i = 0; i < 10; i++)printf("%d ", a2[i]);putchar('/n');}