Недопустимый аргумент типа унарного '*' (есть 'double'), что это значит? - PullRequest
0 голосов
/ 24 мая 2019

Я пытаюсь понять указатели и пустые функции, я изучаю C только в течение 9 недель, и функции немного у меня над головой. Было бы здорово объяснить, почему я получаю эту ошибку в моем printf(), который вызывает указатель * result

#include <stdio.h>
#include <math.h>

/*Declare remainder functions*/
double getRemainder1(double, double);
void getRemainder2(double, double, double *result);

int main()
{
    /*Declare variables*/
    double num1, num2, result;

    /*User input*/
    printf("Enter your two numbers (1-100)? ");
    scanf("%lf%lf", &num1, &num2);

    /* function call*/
    result = getRemainder1(num1,num2);

    printf("The remainder of %.2lf and %.2lf using the getRemainder1 function is %.2lf\n",num1, num2, result);
    printf("The remainder of %.2lf and %.2lf using void getRemainder2 function is %.2lf\n",num1, num2, *result);
    return 0;
}
void getRemainder2(double num1,double num2,double *result)
{
    *result = fmod(num1,num2);
    return;
}

double getRemainder1(double num1,double num2)
{
    double result;

    result = fmod(num1,num2);

    return result;
}
...