错误:函数'printDay';的参数太少;(C语言) 问题:
我对C相当陌生,当我试图编译它(GCC)时,我遇到了这个错误: 错误:函数“printDay”的参数太少 我的问题是:错误:函数'printDay';的参数太少;(C语言) 问题:,c,compiler-errors,C,Compiler Errors,我对C相当陌生,当我试图编译它(GCC)时,我遇到了这个错误: 错误:函数“printDay”的参数太少 我的问题是: 这是什么意思 我该如何解决这个问题 这不是我的全部代码,只是我面临的这个错误。 提前谢谢 代码 #包括 #包括 #包括 #包括 #定义最长工作日31天 #定义最小天数1 #定义最长12个月 #定义最小月数1 枚举月数 { jan=1, 2月, 破坏 四月,, 也许 六月,, 7月, 八月, 九月, 十月, 十一月, 12月 }; 每周枚举日 { 太阳=1, 周一, 星期二, 结
#包括
#包括
#包括
#包括
#定义最长工作日31天
#定义最小天数1
#定义最长12个月
#定义最小月数1
枚举月数
{
jan=1,
2月,
破坏
四月,,
也许
六月,,
7月,
八月,
九月,
十月,
十一月,
12月
};
每周枚举日
{
太阳=1,
周一,
星期二,
结婚,
清华大学,
星期五,
坐
};
int输入();
作废检查(整数月,整数日);
无效打印日(整数月、整数日、整数第一天);
int main()
{
printf(“您好!欢迎使用日计算器!\n”);
printDay(input());
返回(0);
}
/*此函数接受用户的输入
输入:无
产出:第一天
*/
int输入()
{
enum daysOfWeek day=0;
enum monthsof year month=0;
int firstDay=0;
printf(“输入要检查的月份:(1-一月、2-二月等)”;
scanf(“%d”和“月”);
printf(“输入要检查的日期:”);
scanf(“%d”、&day);
支票(月、日);
printf(“输入月1日的工作日:(1-星期日、2-星期一等)”;
scanf(“%d”、&firstDay);
第一天返回;
}
/*
此函数用于检查输入的有效性
输入:日、月
输出:无
*/
作废检查(整数月,整数日)
{
如果(月>最长月|月<最短月和日>最长日|日<最短日)
{
printf(“无效输入,请重试\n”);
输入();
}
如果(月==二月和日>28)
{
printf(“无效输入,请重试\n”);
输入();
}
如果(月==1月和日>31)
{
printf(“无效输入,请重试\n”);
输入();
}
}
无效打印日(整数月、整数日、整数第一天)
{
int date=0;
日期=天-第一天;
开关(日)
{
孙先生:
printf(“%d.%d将是一个星期日”,日,月);
打破
违约:
打破
}
}
我想我已经找到了错误的根源:
在第45行,您有printDay(input())代码>
这让我认为这是一个错误,因为消息是“错误:函数'printDay'的参数太少”,而您只传递了一个参数
希望有帮助 我想我已经找到了错误的根源:
在第45行,您有printDay(input())代码>
这让我认为这是一个错误,因为消息是“错误:函数'printDay'的参数太少”,而您只传递了一个参数
希望有帮助
这是什么意思
“错误:函数'printDay'的参数太少”表示在此处调用时,您将错误数量的参数传递给了printDay
:
printDay(input());
您正在传递一个参数,但您的printDay
声明显示它需要3个参数:
void printDay(int month, int day, int firstDay);
我该如何解决这个问题
您可以通过传递正确数量的参数来修复它,例如:
int month = ...;
int day = ...;
int firstDay = ...;
printDay(month, day, firstDay);
这是什么意思
“错误:函数'printDay'的参数太少”表示在此处调用时,您将错误数量的参数传递给了printDay
:
printDay(input());
您正在传递一个参数,但您的printDay
声明显示它需要3个参数:
void printDay(int month, int day, int firstDay);
我该如何解决这个问题
您可以通过传递正确数量的参数来修复它,例如:
int month = ...;
int day = ...;
int firstDay = ...;
printDay(month, day, firstDay);
您使用3
参数声明(并定义)函数printDay
:
void printDay(int month, int day, int firstDay);
但您仅使用1
参数调用它
printDay(input());
(在类型为int
的情况下,函数input()
与C中的所有函数一样,仅返回1
值)。您使用3
参数声明(并定义)函数printDay
:
void printDay(int month, int day, int firstDay);
但您仅使用1
参数调用它
printDay(input());
(在类型int
的情况下,函数input()
与C中的所有函数一样只返回1
值)。无法比@tuple\u cat更好地解释!再也解释不出比@tuple\u cat更好的了!