|

楼主 |
发表于 2017-12-4 11:16:03
|
显示全部楼层
本帖最后由 yuanyangxin 于 2017-12-4 11:21 编辑
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int add(int, int);
- int sub(int, int);
- int Math(int a, int b, int(*pAdd)(int, int));
- int(*select(char op))(int, int);
- void main()
- {
- //int a = 3;
- //int b = 2;
- //char op='+';
- //int(*fp)(int, int);
- //printf("加法(add) 或者 减法(sub)");
- //scanf_s("%c", op);
- //fp = select(op);
- //cout << Math(a, b,fp) << endl;
- ////cout << Math(a, b, sub) << endl;
- int num1, num2;
- char op;
- int(*fp)(int, int);
- printf("请输入一个式子(如1+2):");
- scanf_s("%d%c%d", &num1, &op, &num2);
- fp = select(op);
- cout << Math(num1, num2, fp);
- system("pause");
- }
- int add(int a, int b)
- {
- return a+b;
- }
- int sub(int a, int b)
- {
- return a-b;
- }
- int Math(int a, int b, int(*pAdd)(int, int))
- {
- return (*pAdd)(a, b);
- }
- int(*select(char op))(int, int)
- {
- switch (op)
- {
- case '+':return add;
- case '-':return sub;
- }
- }
复制代码
你好,我按照小甲鱼老师的代码进行了上面的更改,但是依旧会报错
写入位置时发生访问冲突。上传不了报错信息的图片,麻烦你帮我看一下。 |
|