version 1.16, 2014/12/28 14:50:15 |
version 1.17, 2014/12/28 15:05:38 |
|
|
int i, j; |
int i, j; |
int fmt; |
int fmt; |
|
|
|
if (unnamed != NULL) |
|
*unnamed = NULL; |
|
|
for (i = 1; i < argc; i++) { |
for (i = 1; i < argc; i++) { |
p = arg = argv[i]; |
p = arg = argv[i]; |
|
|
|
/* Single unnamed argument (without leading hyphen). */ |
if (*p++ != '-') { |
if (*p++ != '-') { |
if (unnamed == NULL) |
if (unnamed == NULL) |
goto unknown; |
goto unknown; |
|
if (*unnamed != NULL) |
|
goto toomany; |
*unnamed = arg; |
*unnamed = arg; |
continue; |
continue; |
} |
} |
|
|
if (*p == '\0') /* XXX - end of named options. */ |
if (*p == '\0') /* XXX - end of named options. */ |
goto unknown; |
goto unknown; |
|
|
|
|
} |
} |
|
|
return (0); |
return (0); |
|
|
|
toomany: |
|
fprintf(stderr, "too many arguments\n"); |
|
return (1); |
|
|
unknown: |
unknown: |
fprintf(stderr, "unknown option '%s'\n", arg); |
fprintf(stderr, "unknown option '%s'\n", arg); |