picox  0.1
Xargparser
Xargparser 連携図

列挙型

enum  XArgParserErr {
  X_ARG_PARSER_ERR_NONE, X_ARG_PARSER_ERR_QUATE, X_ARG_PARSER_ERR_OVERFLOW, X_ARG_PARSER_ERR_ESCAPE,
  X_ARG_PARSER_ERR_MEMORY
}
 

関数

const char * xargparser_err_to_string (XArgParserErr err)
 エラーステータスの文字列表現を返します。
 
XArgParserErr xargparser_to_argv (char *str, int *argc, char *argv[], int max_argc)
 strを解析してargvを設定します。 [詳解]
 

詳解

列挙型詳解

列挙値
X_ARG_PARSER_ERR_QUATE 

正常終了

X_ARG_PARSER_ERR_OVERFLOW 

クオートが閉じられていない

X_ARG_PARSER_ERR_ESCAPE 

argcの最大値を超えた

X_ARG_PARSER_ERR_MEMORY 

不正なエスケープを検出した

関数詳解

XArgParserErr xargparser_to_argv ( char *  str,
int *  argc,
char *  argv[],
int  max_argc 
)

strを解析してargvを設定します。

引数
str解析文字列
argc引数の数の出力先
argv引数出力先
max_argcargcの最大値
事前条件
  • str != NULL
  • argc != NULL
  • argv != NULL
  • max_argc > 0
  • argvはsizeof(char) * max_argc以上の領域を持つこと
覚え書き
str自身が解析によってトークンごとに'\0'で分断されます。 リードオンリーの文字列を渡してはいけません。