| STRSUFTOLL(3) | Library Functions Manual | STRSUFTOLL(3) | 
strsuftoll, strsuftollx —
#include <stdlib.h>
long long
  
  strsuftoll(const
    char *desc, const char
    *val, long long
    min, long long
    max);
long long
  
  strsuftollx(const
    char *desc, const char
    *val, long long
    min, long long max,
    char *errbuf,
    size_t errbuflen);
strsuftoll() and
  strsuftollx() convert val into a
  number of type long long, checking that the result is
  not smaller than min or larger than
  max. Two or more decimal numbers may be separated by an
  “x” to indicate a product.
Each decimal number may have one of the following optional suffixes:
In the case of an error (range overflow or an invalid number),
    strsuftollx() places an error message into
    errbuf (which is errbuflen bytes
    long) and returns 0, and strsuftoll() displays that
    error and terminates the process. The parameter desc
    is used to construct errbuf.
Neither desc nor val
    may be NULL.
strsuftoll() and
  strsuftollx() return either the result of the
  conversion, unless the value overflows or is not a number; in the latter case,
  strsuftoll() displays an error message and terminates
  the process with exit code EXIT_FAILURE, and
  strsuftollx() returns with 0 and
  errbuf contains a non-empty error message.
ERANGE]strsuftoll() nor
      strsuftollx() fail gracefully in case of invalid,
      NULL, pointers.strsuftollx() function is prone to buffer
      overflows if used incorrectly. Arguably only
      strsuftoll() should be exposed to a caller.| December 14, 2010 | NetBSD 9.4 |