Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
optionProcess(3)	       Programmer's Manual		optionProcess(3)

NAME
     optionProcess - this is the main option processing routine

SYNOPSIS
     #include <your-opts.h>
     cc [...] -o outfile infile.c -lopts [...]

     int optionProcess(tOptions * opts, int a_ct, char ** a_v);

DESCRIPTION
     This  is  the main entry point for processing options.  It is intended that
     this procedure be called once at the beginning of the execution of  a  pro-
     gram.   Depending on options selected earlier, it is sometimes necessary to
     stop and restart option processing, or to select completely different  sets
     of  options.   This can be done easily, but you generally do not want to do
     this.

     The number of arguments processed always includes the program name.  If one
     of the arguments is "--", then it is counted and the processing stops.   If
     an  error was encountered and errors are to be tolerated, then the returned
     value is the index of the argument causing the error.  A hyphen  by  itself
     ("-")  will also cause processing to stop and will not be counted among the
     processed arguments.  A hyphen by itself is treated as an operand.  Encoun-
     tering an operand stops option processing.

     opts   program options descriptor

     a_ct   program arg count

     a_v    program arg vector

RETURN VALUE
     the count of the arguments processed

ERRORS
     Errors will cause diagnostics to be printed.  exit(3) may	or  may  not  be
     called.  It depends upon whether or not the options were generated with the
     "allow-errors" attribute, or if the ERRSKIP_OPTERR or ERRSTOP_OPTERR macros
     were invoked.

SEE ALSO
     The info documentation for the -lopts library.
     ao_string_tokenize(3),  configFileLoad(3),  optionFileLoad(3),  optionFind-
     NextValue(3), optionFindValue(3), optionFree(3), optionGetValue(3), option-
     LoadLine(3), optionMemberList(3),	optionNextValue(3),  optionOnlyUsage(3),
     optionPrintVersion(3),   optionPrintVersionAndReturn(3),  optionRestore(3),
     optionSaveFile(3),  optionSaveState(3),  optionUnloadNested(3),  optionVer-
     sion(3), strequate(3), streqvcmp(3), streqvmap(3), strneqvcmp(3), strtrans-
     form(3),

				   2026-07-30			optionProcess(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=optionProcess&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help