新手switch语句求助!!!
#include <stdio.h>int main()
{
void action_1(int,int),action_2(int,int); /*函数声明*/
char ch;
int a=15,b=23;
ch = getchar();
switch(ch)
{
case 'a':
case 'A':action_1(a,b);break;
case 'b':
case 'B':action_2(a,b);break;
default :putchar('\a');
}
return 0;
}
报错1:undefined reference to `action_1'
报错2: ld returned 1 exit status
在后面加上
void action_1(int x,int y)
{
printf("x+y=%d\n",x+y);
}
void action_2(int x,int y)
{
printf("x*y=%d\n",x*y);
}
就解决啦 如果解决
请设置最佳答案 报错1:
错误原因:action_1()和action_2()只被声明,而未被实际定义。
底层逻辑:你未说明以上函数应该如何执行,故报错。
改进方法:实际定义与声明类型相同且参数列表相同的void action_1(int ,int ),void action_2(int ,int );
(此函数可以写在main()之后)
报错2:
错误原因:未关闭上次运行时生成的cmd/console pauser进程(黑框)。
底层逻辑:编译器自身功能限制,与代码无关。
改进方法:结束以上进程,重新(尝试)通过编译器 重新编译,连接,运行。
如果有用请设置最佳谢谢! 上面的两位,楼主已经自问自答了{:5_109:}
页:
[1]