This is parse.c in view mode; [Download] [Up]
/* * parse.c * * Jim W Kiraly * July 29 1991 * * includes and other things * */ #include <stdio.h> extern char *jargv[6]; /* * ParseArgs - look throught the command line and do the following * put infile name into argv[1]; * put outfile name into argv[2]; * put red image info into argv[3]; * * return 0 if there is an error in the command line * return 1 if inverting image * return 2 if scaling image * return 3 if rgbing image * return 4 if contrast image */ int ParseArgs ( ac, av ) int ac; char **av; { int count, argUsed[6]; int retValue=-1; ac--; for (count=0; count<=5; argUsed[count++]=0); for (count=1; count<=ac; count++) { if (av[count][0]!='-') { /* In or out file */ if (!argUsed[1]) { /* Infile ?? */ jargv[1] = av[count]; argUsed[1]=1; } else if (!argUsed[2]) { /* Outfile ?? */ jargv[2] = av[count]; argUsed[2]=1; } else /* Too many args */ return 0; } /* In or out file */ else if (av[count][0]=='-' ) { /* The main option */ if (av[count][1]=='i') /* Inverting */ retValue=1; if (av[count][1]=='s') /* Scaling */ retValue=2; if (av[count][1]=='r') { /* Red thingy */ retValue=3; jargv[3] = av[++count]; argUsed[3]=1; } if (av[count][1]=='g') { /* Green thingy */ retValue=3; jargv[4] = av[++count]; argUsed[4]=1; } if (av[count][1]=='b') { /* Blue thingy */ retValue=3; jargv[5]=av[++count]; argUsed[5]=1; } if (av[count][1]=='c') { retValue=4; jargv[3] = av[++count]; argUsed[3]=1; } } } if (retValue==-1) /* No option chosen */ return 0; if (!argUsed[1] || !argUsed[2]) /* No in or out file */ return 0; return retValue; }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.