使用main函数的参数,实现一个整数计数器
题目:程序可以接受三个参数,第一个参数“ - a”选项执行加法,“ - s”选项执行减法,“ - m”选项执行乘法,“ - d”选项执行除法,后面两个参数为操作数。
分析:main函数的参数有三个,形式为:int main(int argc,char *argv[],char *envp[])
其中,argc为整型,表示程序接收的参数个数
argv为字符指针数组,数组元素为一字符指针,分别指向程序接收的各参数字符串
envp也为字符指针数组,表示程序运行的各环境变量。
argc和argv表示的含义如下示意图:
所以,本题中argv[1]表示“-a”或“-s”或“-m”或“-d”,argv[2]表示第一个操作数,argv[3]表示第二个操作数。
因为argv[]指向的都是字符串,所以输入的操作数均被当做字符串,但在运算时要转换为整型才可进行操作。
这里要用到字符串转整型函数atoi。
atoi函数:将字符串类型转换为整型,如果遇到非数字,则停止转换,返回整型数,否则返回0
函数原型:int atoi(const char *arr)
代码如下:
该程序在linux下实现较为方便。