int *p1 =NULL;
int *p2 =NULL;
p1 =malloc(12);//给p1动态分配内存
for (int i = 0; i < 3; i++) {
*(p1 +i) = arc4random() % (3-1 +1) +1;
printf("%d ",*(p1 +i));
}
printf("\n");
p2 =calloc(3,4);//给p2动态分配内存
for (int i = 0; i < 3; i++) {
*(p2 + i) = arc4random()% (3 -1 +1) + 1;
printf("%d ",*(p2 + i));
}
if (memcmp(p2, p1,12) == 0) {
printf("\nGood!");
}else{
printf("\nFailed");
}<pre name="code" class="cpp"> memset(p1, 0, 0);//对p1中清零 free(p1); p1 =NULL; free(p2); p2 = NULL;
本文详细介绍了C语言中使用malloc和calloc进行动态内存分配的方法,并通过实例展示了如何使用memcpy进行内存复制及比较,最后对内存进行了清理。
627

被折叠的 条评论
为什么被折叠?



