Skip to content

Library for parsing command line arguments. Allows short and long arg names, specifying parameter groups and default values.

License

Notifications You must be signed in to change notification settings

isovic/argparser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 

Repository files navigation

argparser - A C++ library for parsing command line arguments.

An easy to use argument parsing library, with all the features you will ever probably need.

Features:

  • short and long argument names
  • automatic assignment of argument values to given variables
  • non-parameter arguments (switch), and arguments requiring parameter input
  • (also, counting the occurence of a specific parameter, good for verbose level)
  • positional arguments (at the beginning or the end of the command line)
  • argument groups
  • argument descriptions
  • automatic usage generation, line wrapped to 120 characters

Program usage is automatically printed out in case no arguments are specified, or if an argument is misused.

Installation

Simply copy the argparser.cc and argparser.h files into your project and #include <argparser.h>.
To run an example from this repo, type:

cd src
make  
./argumentparser --threads 8  

Usage

An example usage code snippet.

ArgumentParser argparser;  
int32_t num_threads = 0;  
argparser.AddArgument(&num_threads, VALUE_TYPE_INT32, "t", "threads", "-1", "Number of threads to use.", 0, "Basic options");  
printf ("num_threads = %d\n", num_threads);  

A more comprehensive example can be found in example.cc.
Additionally, the code contains verbose descriptions to detail the usage.

About

Library for parsing command line arguments. Allows short and long arg names, specifying parameter groups and default values.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •