如何在处理指针时解决冲突类型错误?

问题描述 投票:0回答:1

刚刚接触编码,我正在通过做问题来学习。在这个问题上,我被困在应该编写以数组形式输入并使用指针进行打印的代码中。下面的代码请指出我在哪里弄错了。

#include <stdio.h>
#include <stdlib.h>

int* record_array (int *size_ptr);
void print_array (int *array_ptr , int *size_ptr);


int* record_array (int *size_ptr)
{
    int *array_ptr = (int*) malloc(*size_ptr * sizeof(int));
    for (int index = 0;index < *size_ptr;++index)
    {
        printf("Enter element at index %d : ", index);
        scanf("%d", &array_ptr[index]);
    }
    return array_ptr;
}
void print_array (int *array_ptr, int *size_ptr)
{
    for (int index = 0;index < *size_ptr;++index)
    {
        printf("%d ",array_ptr[index]);
    }

}

int main()
{
    int size = 0;
    int *array = NULL;

    printf("How many elements do you want?");
    scanf("%d", &size);
    array = record_array(&size);
    print_array(array,&size);
    free(array);

    return 0;
}
c pointers
1个回答
0
投票

[当您测试某些想法时,请不要设置scanf值。 scanf对于初学者可能非常棘手。也使用正确的类型。

© www.soinside.com 2019 - 2024. All rights reserved.