1 #include <errno.h>
2
3 #include "system.h"
4
main(int argc,char ** argv)5 int main (int argc, char **argv) {
6 char *out;
7 int newargc, j, f, ret;
8 const char **newargv;
9 FILE *fp;
10
11 if (argc == 1) {
12 printf ("usage: test-popt file_1 file_2 ...\n");
13 printf ("you may specify many files\n");
14 exit (1);
15 }
16
17 for (f = 1; f < argc; f++) {
18 fp = fopen (argv[f], "r");
19 if (fp == NULL) {
20 printf ("cannot read file %s. errno=%s\n", argv[f],
21 strerror(errno));
22 continue;
23 }
24
25 ret = poptConfigFileToString (fp, &out, 0);
26 if (ret != 0) {
27 printf ("cannot parse %s. ret=%d\n", argv[f], ret);
28 continue;
29 }
30
31 printf ("single string: '%s'\n", out);
32
33 poptParseArgvString (out, &newargc, &newargv);
34
35 printf ("popt array: size=%d\n", newargc);
36 for (j = 0; j < newargc; j++)
37 printf ("'%s'\n", newargv[j]);
38
39 printf ("\n");
40 free(newargv);
41 free(out);
42 fclose (fp);
43 }
44 return 0;
45 }
46