Ошибка типа в С - PullRequest
       30

Ошибка типа в С

0 голосов
/ 25 марта 2011

Я только учусь печатать на C и мне интересно, что не так со следующим примером. Когда я пытаюсь скомпилировать его, я получаю сообщение об ошибке: «формат«% i »ожидает тип int, но аргумент 2 имеет тип« int (*) (int, int) ».

   #include <stdio.h>

int difference (int x, int y);
int sum(int x, int y);

main(){
    int differ = difference(10, 5);
    int thesum = sum(3, 4);
    printf("differnece: %i, sum: %i \n", differ, sum);
}

int sum(int x, int y){
    return x + y;
}

int difference (int x, int y){
    return x - y;
}

Ответы [ 2 ]

8 голосов
/ 25 марта 2011

Вы использовали sum (функция), где вы предположительно намеревались thesum (переменная (int)).

1 голос
/ 25 марта 2011

Попробуйте:

printf("difference: %i, sum: %i \n", differ, thesum);

Вы передавали printf прототип функции, а не результат вызова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...