【问题标题】:Run program with arguments instead of filling the values使用参数运行程序而不是填充值
【发布时间】:2011-12-16 09:55:27
【问题描述】:

我有一个小型控制台应用程序,它要求计算一个值(scanf 函数)。但是我想用参数调用这个程序 -> 所以我没有手动填充它。

我的程序如下所示:

./a.out
Give me 3 values:

而且我必须写“3 78 63”。

但我想要这个(带参数运行程序):“./a.out -3 -78 -63”

有什么简单的方法,怎么做?

【问题讨论】:

  • 听说过argcargv
  • 以“-”开头的参数通常称为“选项”或“标志”。

标签: c shell arguments


【解决方案1】:

需要解析传递给程序的argv数组:

int main(int argc, char **argv)
{
    if (argc > 1)
    {
        for (int i  = 1; i < argc; i++)
        {
            char *arg = argv[i];
            // do something
        }
    }
    else
    {
        // ask for arguments via stdin
    }
}

【讨论】:

    猜你喜欢
    • 2019-04-28
    • 2012-03-21
    • 2020-01-07
    • 1970-01-01
    • 2022-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-12
    相关资源
    最近更新 更多