【发布时间】:2016-02-01 18:31:54
【问题描述】:
以下代码:
#include<stdio.h>
void main(int argc, char * argv[]) {
int i, n, sum = 0;
if (argc == 1) {
printf("You have forgot to type numbers.");
exit(1);
}
printf("The sum is: ");
///for (i = 1; i < argc; i++)
///sum = sum + atoi(argv[i]);
for(i = 0; i < argc; i++)
{
n = atoi(argv[i]);
sum += n;
}
printf("%d", sum);
}
在命令行中给出总和,例如,如果在提示符下输入“program.exe 23 23 32”,输出将是“总和为:68”。
我想将求和逻辑分开,使其成为自己的函数,然后在提示符下我希望能够键入“program.exe -sum 23 23 32”以获得相同的结果。
【问题讨论】:
-
main()返回int。你有什么问题? -
使用像
-sum这样的参数并不意味着它有自己的功能。你只需要解析参数并采取相应的行动。 -
好的。我明白你的意思了。我想我有点卡在解析部分,即我们如何定义参数。第一个是程序名称,第二个是函数,第三个参数是适当的数据,在这种情况下是一堆整数。
标签: c parsing command-line-arguments