我知道基本的c ++编码和命令行语法。通常,main()函数如下所示:
int main(int argc, char *argc[])
当我通过命令行执行我的程序时,我就这样做了:
cd c:\path\to\foo 1
其中1是参数。当然,arc将等于'2','1'将位于数组argc的元素'1'(而不是0)。
我看过很多地方都使用过短划线。具体做法是:
gcc -v
如果我输入'gcc',它就说没有参数。如果我输入'gcc v',我会收到“错误:没有这样的文件或目录”。但是当我看一下gcc所在的minGW bin文件夹时,没有文件夹'v'。
答案 0 :(得分:4)
它只是从可能存在的参数值中识别命令行参数名称的标准。例如gcc -o myfile.o
Windows世界通常会看到 - 或者/作为标记。我经常遇到一个 - 在unix / bsd世界中。
答案 1 :(得分:4)
这只是一种在程序中设置选项的方式。它来自Unix / Linux等中提供的getopt
库.kc7zax在其答案中提到的--
形式是这些选项的长形式(允许使用长标识符而不是单个字符)。
这些并没有什么神奇之处。它们只是从argv
数组中解析出来。如果需要,您可以自己实现类似或相同的功能。但这是一种痛苦。这就是图书馆存在的原因。