the original code is from
http://www.gnu.org/software/libtool/manual/libc/Example-of-Getopt.html
I changed a little.
#include <time.h>
#include <unistd.h>
#include <getopt.h>
#include <stdio.h>
int main(int argc, char *argv[])
{
int a = 5;
char ch;
char* cvalue;
opterr = 0; // ignore error message on unrecognize option
// one colon after one character means it requires parameter
// two colon after one character means the parameter is optional
while ((ch = getopt(argc, argv, "abc:")) != -1)
{
switch(ch)
{
case 'a':
printf("get a option/n");
break;
case 'b':
printf("get b option/n");
break;
case 'c':
cvalue = optarg;
printf("get c option %s/n", cvalue);
break;
case '?':// for unrecognized options
if (optopt == 'c')
fprintf (stderr, "Option -%c requires an argument./n", optopt);
else if (isprint (optopt))
fprintf (stderr, "Unknown option `-%c'./n", optopt);
else
fprintf (stderr,
"Unknown option character `//x%x'./n",
optopt);
}
}
return 0;
}