home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Usenet 1994 October
/
usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso
/
misc
/
volume10
/
parseargs
/
stest.c
< prev
next >
Wrap
C/C++ Source or Header
|
1990-02-16
|
2KB
|
74 lines
#include <useful.h>
#include <parseargs.h>
VERSIONID("$Header: stest.c,v 2.0 89/12/24 00:56:29 eric Exp $");
/*
** STEST -- a simple test program for the argument parser
**
** Author:
** Eric Allman
** University of California, Berkeley
*/
int RepCount;
char *Name;
char *DirName = ".";
BOOL XFlag = FALSE;
BOOL YFlag = FALSE;
BOOL ZFlag = FALSE;
char TabChar = ':';
struct namelist *Argv = NULL;
struct namelist *Groups = NULL;
ARGDESC Args[] =
{
' ', ARGREQ, argStr, __ &Name, "Name",
'n', ARGOPT, argList, __ &Groups, "newsGROUP",
'c', ARGOPT, argInt, __ &RepCount, "REPcount",
'd', ARGOPT, argStr, __ &DirName, "DIRname",
'x', ARGOPT, argBool, __ &XFlag, "Xflag",
'y', ARGOPT, argBool, __ &YFlag, "Yflag",
'z', ARGOPT, argBool, __ &ZFlag, "Zflag",
't', ARGOPT, argChar, __ &TabChar, "TABchar",
' ', ARGOPT, argList, __ &Argv, "File",
ENDOFARGS
};
main(argc, argv)
int argc;
char **argv;
{
parseargs(argv, Args);
printf("Name = \"%s\", DirName = \"%s\", RepCount = %d,\n",
Name, DirName, RepCount);
printf("XFlag = %d, YFlag = %d, ZFlag = %d, TabChar=%03o;\n",
XFlag, YFlag, ZFlag, TabChar);
if(Groups) {
printf("Newsgroups: ");
while(Groups) {
printf("%s", Groups->nl_name);
Groups = Groups->nl_next;
if(Groups)
putchar(' ');
else
putchar('\n');
}
}
if(Argv) {
printf("Remaining args: ");
while(Argv) {
printf("%s", Argv->nl_name);
Argv = Argv->nl_next;
if(Argv)
putchar(' ');
else
putchar('\n');
}
}
exit(0);
}