Re: Val() versus CLng, CInt or CByte
- From: dpb <none@xxxxxxx>
- Date: Tue, 30 Oct 2007 09:53:20 -0500
Rick Rothstein (MVP - VB) wrote:
Val is nice because it it will read a number followed by text, i.e. 23A becomes 23, instead of tossing up an error...
... which also has a dark side: e.g. Val("23E2") -> 2300, and Val("23E-2") -> 0.23
What's the "dark" side of correct interpretation of a floating point exponential notation??? (Puzzled as to why one would/could possibly expect/want any other result...)
I referred to the statement of the previous poster:Val is nice because it it will read a number followed by text...
If you use Val to grab numbers from the left end of strings (a quite common usage of Val it seems to me), you might be surprised by the returns when the string happens to look like an exponential notation.
Would be far more surprised if it _didn't_ return the proper result when parsing a character string which does "look like" exponential notation.
I think Donald was referring to surprise someone might get parsing a set of code numbers where the digits in front of a letter were being sought and where the code numbers were something like this...
987A-30
654B-78
321E-12
That last one might be a surprise when pushed through the Val function.
Yeah, if finally dawned on me what his target was...my opinion is one needs to know the data one parses, but agree lots of folks seem to use easy way out and do get surprised on occasion because of it...
--
.
- References:
- Val() versus CLng, CInt or CByte
- From: Jack
- Re: Val() versus CLng, CInt or CByte
- From: Steve Gerrard
- Re: Val() versus CLng, CInt or CByte
- From: Donald Lessau
- Re: Val() versus CLng, CInt or CByte
- From: dpb
- Re: Val() versus CLng, CInt or CByte
- From: Donald Lessau
- Re: Val() versus CLng, CInt or CByte
- From: dpb
- Re: Val() versus CLng, CInt or CByte
- From: Rick Rothstein \(MVP - VB\)
- Val() versus CLng, CInt or CByte
- Prev by Date: Re: WebBrowser control question
- Next by Date: Re: Interesting
- Previous by thread: Re: Val() versus CLng, CInt or CByte
- Next by thread: Re: Val() versus CLng, CInt or CByte
- Index(es):
Relevant Pages
|
|