这个发生访问冲突是怎么回事啊,调试没有问题,一输出就显示这个了
输出语句都不对,按以下格式,注意双引号位置
printf("%d+%d=%d\n",a,b,a+b);
前面的scanf也一样,双引号位置不对啊
scanf("%d%c%d",&a,&ch,&b);
https://www.xitongzhijia.net/xtjc/20220131/237457.html
应该是堆栈保留大小太小了,可以看看这个
scanf("%d%c%d",&a,&ch,&b);
参数放在引号外面
switch每个case最后要加上break!!!
使用相同的函数名定义不同函数时,每个函数要具有不同的参数列表
int fun(int x)
{...}
int fun(int x,int y)//这两个同名函数包含的元素个数不同,可以这样定义
{...}
int fun(int x)
{...}
int fun(double x)//这两个同名函数包含的元素类型不同,可以这样定义
{...}
int fun(int x)
{...}
int fun(int y)//这两个同名函数包含的元素个数和类型相同,不可以这样定义。因为int x和int y所代表的形参本质上一样
{...}
int fun(int x)
{...}
double fun(int x)//这两个同名函数包含的元素个数和类型相同,不可以这样定义,虽然返回类型不同,但是参数列表相同,这样也不行
{...}
同理还有
int fun(int x)
{...}
double fun(const int x)//g++认为const int 和int是一个平凡转换,是同级别的东西,所以也会重定义
{...}