xref: /titanic_51/usr/src/lib/libast/common/man/streval.3 (revision c10c16dec587a0662068f6e2991c29ed3a9db943)
.fp 5 CW .. .nr ;G \\n(.f .Af "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9" \\*(;G .. .aF 5 \\n(.f "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7" .. .aF 5 1 "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7" .. .aF 1 5 "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7" ..

0

..

..

STREVAL 3
NAME
streval - long integer arithmetic expression evaluator
SYNOPSIS
.L "long streval(char* s, char** e, long (*conv)(char* cs, char** ce))"
DESCRIPTION
streval evaluates the long integer arithmetic expression in the nul-terminated string s and returns the result. If e is not 0 then *e is set to point to the first unknown character in the expression.

If conv is not 0 then it is called when an unknown token is encountered in s . cs points to the beginning of the unknown token. The return value is the long integer value of the unknown token and ce must be set to point to the first character after the unknown token. If an expression syntax error is encountered the conv is called with cs set to 0 and *ce pointing to the error message text.

In addition to the normal C expressions and integer constant styles, numbers in any base b <= 2 <=36 may be represented as b # nnnn , where the extra digits in nnnn are taken from [A-Z] .

"SEE ALSO"
strtol(3)