www.pudn.com > CMDL.zip > TEST2.CPP


// command line test program 
// John M. Dlugosz 
 
 
#include "usual.h" 
#include "cmdl.h" 
#include  
 
// these can be static globals, spread in several modules even. 
typedef cmdl_flag flag; 
flag v ('v', "requests verbose mode"); 
flag s ('s', "specifies alternate algorythm"); 
flag T ('T', "prevents the foobar from clearing (debugging)"  ,cmdl::once); 
cmdl_string name ("name", "name to place on reports (use \"'s around the string)"); 
cmdl_string file ("file", "file to operate on (required)", cmdl::required); 
cmdl_string pos1 ((char*)0, "first positional parameter"); 
cmdl_int count ('c', "iteration count"); 
 
/* /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ */ 
 
int main() 
{ 
cmdl::signon ("stupid test program to test parameter passing.\nWritten by John M. Dlugosz\n"); 
cmdl::parseit(); 
// report on what was found 
if (v()) puts ("you selected -v"); 
if (s()) puts ("you selected -s"); 
if (T()) puts ("you selected -T"); 
if (name()) printf ("name=\"%s\"\n",name()); 
if (file()) printf ("file=\"%s\"\n",file()); 
if (pos1()) printf ("first positional parameter is \"%s\"\n", pos1()); 
if (count.hasvalue()) printf ("count= %d\n", count()); 
}