xref: /freebsd/usr.bin/getopt/getopt.c (revision f0adf7f5cdd241db2f2c817683191a6ef64a4e95)
1 #include <sys/cdefs.h>
2 __FBSDID("$FreeBSD$");
3 
4 #include <stdio.h>
5 #include <stdlib.h>
6 #include <unistd.h>
7 
8 int
9 main(int argc, char *argv[])
10 {
11 	int c;
12 	int status = 0;
13 
14 	optind = 2;	/* Past the program name and the option letters. */
15 	while ((c = getopt(argc, argv, argv[1])) != -1)
16 		switch (c) {
17 		case '?':
18 			status = 1;	/* getopt routine gave message */
19 			break;
20 		default:
21 			if (optarg != NULL)
22 				printf(" -%c %s", c, optarg);
23 			else
24 				printf(" -%c", c);
25 			break;
26 		}
27 	printf(" --");
28 	for (; optind < argc; optind++)
29 		printf(" %s", argv[optind]);
30 	printf("\n");
31 	return status;
32 }
33