#include <stdio.h>
void message() ;
int main()
{
message ( message ());
return 0;
}
void message()
{
printf("it is small");
}
我收到编译错误"void can't be pass"
。它是什么意思,我该如何解决?
答案 0 :(得分:2)
行message ( message ());
调用message()
,然后将其返回值传递给另一个message()
调用。这不起作用,因为正如错误消息所述,您无法将void
结果传递给另一个函数(因为它实际上根本不是结果)。停止你正在做的事情,并考虑你真正希望代码做什么。
答案 1 :(得分:0)
message
不会返回值。您不能在以下表达式中使用它:
message ( message ());
答案 2 :(得分:0)
第message ( message ())
行是错误的。因为您将message()
定义为void函数,所以您可以t pass any parameters to message().
并且对于void函数,您应该通过返回行结束它。所以我认为你的程序应该是:
#include<stdio.h>
void message() ;
int main()
{
message ();
return 0;
}
void message()
{
printf("it is small");
return;
}
答案 3 :(得分:-1)
另外,定义函数“void message()”不能接受任何参数。