方法

GLibOptionContextparse

自 2.6 版起

声明 [源]

gboolean
g_option_context_parse (
  GOptionContext* context,
  gint* argc,
  gchar*** argv,
  GError** error
)

描述 [源]

解析命令行参数,识别已添加到 context 的选项。调用此函数的一个副作用是会调用 g_set_prgname()

如果解析成功,则已解析的参数将从数组中移除,并相应地更新 argcargv。如果前后有未解析的选项,或者某些选项以“-”开头,则将“—”选项从 argv 中去除。发生错误时,argcargv 保持不变。

如果启用了自动 --help 支持(参见 g_option_context_set_help_enabled()),且 argv 数组包含识别的帮助选项之一,则此函数将在 stdout 上生成帮助输出并调用 exit (0)

请注意,此函数依赖于 [当前区域设置][setlocale] 以自动转换字符串和文件名参数的字符集。

自 2.6 版起可用

参数

argc

类型: gint*

指向命令行参数数量的指针。

该参数将由函数修改。
该参数可以为 NULL
argv

类型: 一个 gchar** 数组

指向命令行参数数组的指针。

该参数将由函数修改。
该参数可以为 NULL
该数组的长度由 argc 参数指定。
方法调用者负责获取返回数据所有权,并负责释放它。
每个元素都是一个以 NUL 结尾的 UTF-8 字符串。
error

类型: GError **

用于恢复错误的返回位置。[源]

该参数可以为 NULL
如果返回位置不是 NULL,则必须将其初始化为 NULL GError*
如果没有错误,方法将使用默认值初始化该参数到 NULL
发生错误时,该参数将设置为一个新的 GError 分配;调用者将获取数据所有权,并负责释放它。

返回值

类型: gboolean

TRUE 如果解析成功,FALSE 如果出现错误。