59 const char *argp_program_version =
61 const char *argp_program_bug_address =
62 "<bug-gnu-utils@gnu.org>";
66 "Argp example #3 -- a program with options and arguments using argp";
69 static char args_doc[] =
"ARG1 ARG2";
73 {
"verbose",
'v', 0, 0,
"Produce verbose output", 0},
74 {
"quiet",
'q', 0, 0,
"Don't produce any output", 0},
75 {
"silent",
's', 0, OPTION_ALIAS, 0, 0},
76 {
"output",
'o',
"FILE", 0,
77 "Output to FILE instead of standard output", 0},
91 parse_opt (
int key,
char *arg,
struct argp_state *state)
110 if (state->arg_num >= 2)
119 if (state->arg_num < 2)
125 return ARGP_ERR_UNKNOWN;
131 static struct argp argp = { options, parse_opt, args_doc, doc, 0, 0, 0 };
133 int main (
int argc,
char **argv)
146 printf (
"ARG1 = %s\nARG2 = %s\nOUTPUT_FILE = %s\n"
147 "VERBOSE = %s\nSILENT = %s\n",