我遇到了几个用C或C ++编写的命令行实用程序(CLU)程序。我见过的所有这些程序都使用一个减号来控制选项,然后是正在“打开”或“关闭”的名称。例如,gdal_translate:
gdal_translate -of GTiff -co "TILED=YES" utm.tif utm_tiled.tif
我的问题:为什么CLU程序会以这种方式使用减号?这只是一种被公认为良好实践的东西,是CLU程序在cmd.exe中工作所需要的东西,还是C / C ++需要的东西?
答案 0 :(得分:0)
我会说更常见的是短/长形式的参数,例如
-C <commit>, --reuse-message=<commit>
Take an existing commit object, and reuse the log message and the
authorship information (including the timestamp) when creating the
commit.
这可能是因为getopt_long
可以解析它们。就-of
样式而言,这当然是程序员的选择,但需要我相信的自定义解析器。