2011-03-24 85 views
0

我刚刚学习C语言输入,并想知道以下示例中出现了什么问题。当我尝试编译它,我得到的错误:“格式 '%i个' 需要int类型,但参数2的类型为 'INT(*)(INT,INT)'输入错误C

#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; 
} 
+0

老兄,如果你改变原来的问题来纠正最初的错误,那么人们很难确定你的问题是什么。 – 2011-03-25 07:25:38

+0

我恢复到原来的形式,所以每个人都可以看到错误。 – 2011-03-25 11:39:24

回答

8

您使用sum(一功能),你大概打算thesum(一个(int)变量)

+0

哇。我一定很累。 thansk – locoboy 2011-03-24 21:13:29

1

尝试:。

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

你被传递给printf函数原型,而不是调用的结果