使用main函数参数实现一个整数计算器

给定命令行参数-a 1 2

#include <stdio.h>
int add(int a, int b)
{
	return a + b;
}
int minus(int a, int b){
	return a - b;
}
float mov(int a, int b)
{
	return (float)a / b;
}
int mul(int a, int b)
{
	return a*b;
}
int main(int argc, char* argv[], char *envp[])
{
	int i = 0;
	int ret = 0;
	int a = atoi(*argv[2]); //将第二个参数的字符数字转换整型数字
	int b = atoi(*argv[3]);
	if (argc != 4){
		printf("参数有误");
		return 0;
	}
	switch (*(argv[1]+1))  //跳过第一个参数中‘-’,判断命令
	{
	case 'a':
		ret=add(a,b);
		break;
	case 's':		
		ret = minus(a,b);
		break;
	case'm':
		ret = mov(a,b);
		break;
	case'd':
		ret = mul(a,b);
		break;
	default:
		printf("第二个参数有问题");
		break;
	}
	printf("%d", ret);
	return 0;
}
//int main(int argc, char* argv[], char*envp[])
//{ //argc表示参数个数,argv数组存放参数首元素地址,envp存放环境变量
//	int i = 0;
//	for (i = 0; i < argc; i++)
//	{
//		printf("%s\n", argv[i]);
//	}
//}

猜你喜欢

转载自blog.csdn.net/m_jianjianjiao/article/details/80371542
今日推荐