C 警告]数据定义没有类型或存储类[默认情况下启用]
对于大学,我需要使用提供的模板创建一个基本桌面计算器。我已经设法完成了大部分工作,但第9行出现了此错误消息(C 警告]数据定义没有类型或存储类[默认情况下启用],c,class,storage,definition,C,Class,Storage,Definition,对于大学,我需要使用提供的模板创建一个基本桌面计算器。我已经设法完成了大部分工作,但第9行出现了此错误消息(iScreenSetup();: “[警告]数据定义没有类型或存储类[默认情况下启用]” 有什么建议吗 #include "stdio.h" #include "conio.h" #include "stdlib.h" #include "string.h" /* Prototypes */ iScreenSetup(); iDataCapture(); iProcessData()
iScreenSetup();
:
“[警告]数据定义没有类型或存储类[默认情况下启用]”
有什么建议吗
#include "stdio.h"
#include "conio.h"
#include "stdlib.h"
#include "string.h"
/* Prototypes */
iScreenSetup();
iDataCapture();
iProcessData();
iReport();
iExit();
/* Declare and initialise global variables */
float fNum1 = 0.0;
float fNum2 = 0.0;
float fAns = 0.0;
int iOption = 0;
int main(void)
{
/* Set up the screen */
iScreenSetup();
/* Prompt the user and capture the data */
iDataCapture();
/* Process the data */
iProcessData();
/* Generate the report */
iReport();
/* Exit routine */
iExit();
} /* End of main */
您的原型缺少返回类型。如果不返回任何内容,则将是
void
/* Prototypes */
void iScreenSetup();
您尚未在函数声明中指定返回类型。默认情况下,返回类型为
int
。例如iScreenSetup();
应为iScreenSetup();
例如int iScreenSetup())
。这与C89有关,如果不指定类型,则默认值为int
,尽管C99之后该值已消失。当函数名从i
开始时,它应该返回int
。例如,int iScreenSetup();
我遇到了一个错误“未定义对textcolor的引用”任何提示?一些C附带了“conio.h”,这不是标准的,其中大多数函数都包含textcolor()函数,但可能不是全部。如果这是一个问题,请发布一个新问题,并展示实际使用textcolor的代码。非常感谢!我一直在绞尽脑汁想弄清楚它。@Firey Skyline:注意,这仍然不是一个原型声明(如注释所示),但是一个(过时的)旧式声明。原型可能是例如void iScreenSetup(void)
。对于旧式版本(以及其他问题),编译器可能不会告诉您何时使用错误数量的参数(或错误类型的参数)调用它。