调用之前需要声明:void action1(int,int),action2(int,int);
否则会出现redefinition; different type modifiers这个错误,原因是定义和声明时,参数个数,类型,返回值类型不一样,或者是先调用了函数,没声明,定义在后面也会有这种情况。
#include<stdio.h>
int main()
{
void action1(int,int),action2(int,int); //此处此处此处需要注意
char ch;
int a=15,b=23;
ch=getchar();
switch(ch)
{
case'a':
case'A':action1(a,b);break;
case'b':
case'B':action2(a,b);break;
default:putchar('\a');
}
return 0;
}
void action1(int x,int y) //执行加法函数
{
printf("x+y=%d\n",x+y);
}
void action2(int x,int y) //执行乘法函数
{
printf("x*y=%d\n",x*y);
}