gpt4 book ai didi

c - 获取命令行的元素并将它们存储到数组中

转载 作者:行者123 更新时间:2023-11-30 17:52:21 25 4
gpt4 key购买 nike

我正在尝试用 C 语言实现 Unix 命令“tar”。它将使用命令 p5a -c archive infile1 infile2 ... infilek 执行,其中参数 infile1、infile2、.. ., 因菲莱克表示必须组合起来才能创建存档的文件的名称。我无法从命令行获取文件名并将它们存储到数组中。任何帮助,将不胜感激。谢谢!

最佳答案

我真的不应该填鸭式地问这个看起来像家庭作业的问题,但自从我上次接触 gcc 以来已经有两年了,需要一些练习。

一方面,看起来您能够使用 argc 来获取您想要的数据。问题是“如何知道”参数的数量。大多数人为此使用 argv。刚刚使用 Visual Studio 2010 进行了以下操作,

#include<stdio.h>
#include<conio.h>

int main(int argv, char *argc[])
{
int i = 1;
printf("Your arguments are:\n");
for (i=0; i<argv; i++)
{
printf("%s\n",argc[i]);
}
return 0;
}

这是一些示例输出(Win7 命令行),

C:\...\Debug>C_hello.exe this is a string of input
Your arguments are:
C_hello.exe
this
is
a
string
of
input

C:\...\Debug>

我希望您在 Linux 中使用 gcc 也会得到类似的结果。

编辑:对此事进行了一些搜索。看起来有一个标准的 Linux 库可以处理这类事情, getopt

请参阅该页面上的示例。解释得很好。

关于c - 获取命令行的元素并将它们存储到数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16267684/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com