[英]I'm getting a “conflicting types” error in C
我目前正在为C课程编写程序,其中我必须输出形状区域。
这是我程序中矩形区域的函数:
double rectangle() // calculate area of rectangle
{
double length, width;
printf("\nEnter length and width of rectangle: ");
scanf("%g %g\n", &length, &width);
return (length*width);
}
这是我所谓的函数rectangle()
if(strncmp(shape, "rectangle", 15) == 0)
area = rectangle();
我在Linux Mint和GCC编译器中使用Geany。
我收到的错误是
“ geometryv2.c:78:错误:'矩形'的类型冲突”
我看不出这里有什么冲突。 返回类型为double的函数将返回一个double。 在这里的任何帮助将不胜感激。 我对C还是很陌生,这实际上是我的第一个C程序。
谢谢!
您是否在使用rectangle()
函数之前声明了它? 如果不是,则假定返回一个int。
您需要这样的一行:
double rectangle(void);
在调用它之前的某个位置,或者在调用它之前,在与它相同的模块中定义函数。
区域变量的数据类型是什么?
还可以修复scanf:
scanf("%lg %lg")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.