因此,对于我的第一个C项目,我想从一个计算器开始简单,但是SUM
的所有功能都是返回0.00000
。
#include <stdio.h>
int SUM (float n1, float n2);
int main() {
float num1 = 0;
float num2 = 0;
float res = 0;
scanf("Enter 2 numbers: %f %f", &num1, &num2);
res = SUM(num1, num2);
printf ("%f", res);
}
int SUM (float n1, float n2) {
float sum = n1+n2;
return ∑
}
答案 0 :(得分:7)
您声明了SUM
函数将返回一个整数值(int
)。
然后,您将两个float
加在一起,并返回了结果的 地址 。
float
的地址与int
的值完全不同。
您已调用未定义行为。
float SUM (float n1, float n2); // SUM should return a float.
float SUM (float n1, float n2) {
float sum = n1+n2;
return sum; // Return the sum (without any addresses)
}
您有一个名为SUM
的函数(带有大写字母)和一个名为sum
的带有小写字母的变量。尽管从技术上讲这是可以的,但如果另一个程序员读取您的代码,则可能会引起混乱。
您是否可以始终确保Sum
,sum
,SUM
之间的区别? Sine
,sine
,sin
,Sin
,SINE
等呢?
您应该付出更多的努力来明确,明确地命名函数,变量,常量等,以便所有程序员都容易理解并在适当的上下文中使用适当的函数。