Posted by Jim Guerber on July 29, 2011 at 09:26:03:
In Reply to: Why does it work? posted by Grant Foraker on July 29, 2011 at 06:30:22:
I know it is confusing. The issue is what is the default length and precision of the result of an expression (yes, we call that the "accumulator").
The Numeric processing component of comet32 can take VERY large numbers. Think
length 500.320 & local VeryBigNumber
Artificially, we limit the numeric declarations to 64.xxx, just for sanity sake, and constants are limited to 32 digits. We could expand this if asked. So far, no one has asked for larger numbers, and we haven't really tested much beyond 16.8.
That is fine as far as numeric computation goes, but what about the STR() function. Back in '09 I was persuaded that, if the number fit, the result of the STR() function should be 16.8 to maintain compatibility with c16 programs.
Comet has always been a work in progress.
If you know how many digits you are interested in, you should use the strip function.
LET M1$ = SUB(STRIP(STR(MO + 100)),2,2)
That will always, consistently produce the same result whether c16 or c32.
Each file can be a maximum of 1MB in length Uploaded files will be purged from the server on a regular basis.