0

ft_ultimate_range.c:14:13:错误:指针和整数之间的有序比较('int'和'int **')[-Werror]

“而(最小 < 范围)”

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

int ft_ultimate_range(int **range, int min, int max)
{
    int size;
    int i;

    size = max - min;
    if (min >= max)
        return (0);
    *range = (int*)malloc(sizeof(int) * size);
    i = 0;
    while (min < range)
    {
        range[0][i] = min;
        i++;
        min++;
    }
    return (size);
}

int main()
{
    int one = 2;
    int two = 6;
    int number = 3;
    int *pt1 = &number;
    int **pt2 = &pt1;


    printf("%i\n", ft_ultimate_range(pt2, one, two));
    return (0);
}

什么是错误?

4

1 回答 1

0

如果 range 是 2d 数组,则将 int(min) 与无效的整个 2d 数组 int**(range) 进行比较。

//while (min < range) //min is integer, range is 2d array. comparison is invalid. 
while (min < range[i][0]) //compare with value of 2darray instead
于 2019-10-10T02:10:51.550 回答