定义两个整型指针,分别用malloc、calloc对其分配空间保存3个元素,malloc分配的空间用memset清零,随机对数组进行赋值随机范围1-3,赋值后用memcmp比较两个数组。如果相同打印G

int *p1 = malloc(sizeof(int) * 3);

        memset(p1, 0 , (sizeof(int ) * 3));

        for (int i = 0; i < 3; i++) {

            *(p1 + i) = arc4random() % 3 + 1;

            printf("%d ", *(p1 + i));

        }

        printf("\n");

        int *p2 = calloc(3, 4);

        for (int i = 0; i < 3; i++) {

            *(p2 + i) = arc4random() % 3 + 1;

            printf("%d ", *(p2 + i));

        }

        int q = memcmp(p1, p2, sizeof(int) * 3);

        if (!q) {

            printf("Good!");

        } else {

            printf("Failed");

        }

        free(p1);

        free(p2);

        p1 = NULL;

        p2 = NULL;


你可能感兴趣的:(定义两个整型指针,分别用malloc、calloc对其分配空间保存3个元素,malloc分配的空间用memset清零,随机对数组进行赋值随机范围1-3,赋值后用memcmp比较两个数组。如果相同打印G)