ss1l - Scan a long from a string
Example compile flags (system dependent):
-DLINUX_X86_64 -DLINUX_X86_64_OPTERON -DGNU_COMPILER
-lKJB -lfftw3 -lgsl -lgslcblas -ljpeg -lSVM -lstdc++ -lpthread -lSLATEC -lg2c -lacml -lacml_mv -lblas -lg2c -lncursesw
const char *input_str,
This routine reads a long from a string with more sophisticated error
reporting that available using scanf. If the contents of "str" is exactly one
number which will fit into a long (i.e., it is between LONG_MIN and
LONG_MAX), it sets *long_ptr to that number and returns NO_ERROR. Otherwise
and error message is set, and ERROR is returned. The contents of *long_ptr
are only changed on success.
If "str" represents a valid long, then NO_ERROR is returned. Otherwise the
problem with "str" is reported in the set error message, and ERRROR is
returned. The problem with "str" can be printed with kjb_print_error.
For successful return, "str" cannot contain two numbers. For example, it
can't be something like "1 2".
ss1i64, ss1i32, ss1i16
These macros can be used to force scanning of a certain integer size. The
argument of these is normally a pointer to kjb_int64, kjb_int32, or
kjb_int16 as appropriate.
This software is not adequatedly tested. It is recomended that
results are checked independantly where appropriate.