新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
回答同上
目前成都创新互联公司已为近1000家的企业提供了网站建设、域名、虚拟空间、网站托管运营、企业网站设计、逊克网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
你写的没有错,void
butler(void)就是一个自定义的函数原型,前一个void表示butler()函数不返回一个值,后一个void则是表示不接受任何形式的参数
void是空类型,不能有返回值的,要么就直接一个return,不要任何东西。要么就不写return。0是整数型的,要返回0就把函数的类型改为int
能
void butler(void)
{
int qwe;
printf("How many pig do you have?\n");
scanf("%d",qwe);
printf("I have %d pigs\n",qwe);
}
因为你调用butler时没有加括号,butler; 不加括号的函数名就仅仅是个地址而已,就会被编译器忽略掉
加上括号就好:
butler(); //butler函数调用
butler; //butler仅仅是个地址
void xh (void) /*循环示例程序段*/
{/*xh函数体开始*/
int num;
printf("输入一个小于21的整数 \n");
scanf("%d",num); // 这里你写成了%i\n,修改为%d
while (num 21)/*num 21为循环条件*/
{/*while循环体开始*/
printf("%d\n",num); // 这里你写成了%i,修改为%d
num = num + 1;
}/*while循环体结束*/
}/*xh函数体结束*/
,butler
的函数原型中,第一个
void
指明
butler
函数没有返回值;第二个
void
表明
butler
没有参数,也就是不接收任何参数。在
main
函数前面写了
butler
的函数原型后,当
main
函数调用
butler
时,编译器就能检测到
butler
函数调用语句是否正确。如果
main
函数前面没有
butler
的函数原型,那么我们就不能在
main
函数中调用
butler
函数,除非我们把函数定义放在
main
函数之前。不过把函数定义置于
main
函数之前是一种不好的编程风格,因为这将导致我们花不少时间来寻找
main
函数的所在地。想象一下,如果我们写了几十个函数,如果每个函数定义都置于
main
函数之前,那样
main
函数还算好找;但是如果我们不小心把某些函数放在了
main
函数后面,也就是说
main
函数被放在一堆函数中间,那就很难找了!