⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.cpp

📁 很好的 关于C++的例子 我想你要是可以把上面的例子都做好了 看明白了 关于函数指针这一部分你应该学的很好了
💻 CPP
字号:
#include "stdio.h"
#include "math.h"

typedef struct ST_STRUCT
{
	int a;
	int b;
}ST,pST;

char operate[5]={'+','-','*','/','^',};

int Add(ST *stNum)
{
	return stNum->a + stNum->b;
}

int Dec(ST *stNum)
{
	return stNum->a - stNum->b;
}


int Mult(ST *stNum)
{
	return stNum->a * stNum->b;
}


int Div(ST *stNum)
{
	return stNum->a / stNum->b;
}


int Pow(ST *stNum)
{
	return pow(stNum->a , stNum->b);
}


/*函数声明:这五个函数都是以一个指向ST型(事先定义过)结构的指针变量作为参数,返回值int。*/

int (*process[5])(ST *)={Add,Dec,Mult,Div,Pow};
/*process被调用时提供5种功能不同的函数供选择(指向函数的指针数组)*/
int main()
{
	char GetOperate;
	int choice;
	int sum;
	ST stNumber;
	int i=0;
	printf("\nChoose:\n?");
	scanf("%c",&GetOperate);

	printf("\na:\n?");
	scanf("%d",&stNumber.a);

	printf("\nb:\n?");
	scanf("%d",&stNumber.b);

	for(i=0;i<5;i++)
	{
		if(operate[i]==GetOperate)
			choice=i;
	}



	if(choice>=0&&choice<=4)
	sum=(*process[choice])(&stNumber); /*调用相应的函数实现不同功能*;*/ 
	printf("\nsum=%d\n",sum);
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -