读整数

时间:2015-05-17 04:39:58

标签: c command-line-arguments greatest-common-divisor

我写了一个我知道正常工作的GCD功能。但是,当我尝试让它接受命令行参数时,它不起作用。发生了什么事?

代码:

#include<stdio.h>

int euclid(int m, int n)
{
    int r = m % n;

    if (r == 0)
        return n;

    return euclid(n, r);
}

void main(int argc, char *argv[])
{
    printf("%d\n", euclid(atoi(argv[0]), atoi(argv[1])));
}

1 个答案:

答案 0 :(得分:4)

printf("%d\n", euclid(atoi(argv[0]), atoi(argv[1])));

argv[0]是可执行文件名称。您应该使用argv[1]argv[2]