Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c++ > #14522
| From | Ian Collins <ian-news@hotmail.com> |
|---|---|
| Newsgroups | comp.lang.c++ |
| Subject | Re: Testing for Numeric Digits |
| Date | 2012-02-27 11:11 +1300 |
| Message-ID | <9qvp10F3nfU3@mid.individual.net> (permalink) |
| References | <MPG.29b45a9820e6ae9a9896f9@news.eternal-september.org> |
On 02/27/12 11:05 AM, Mike Copeland wrote:
> Is there a relatively easy and simple way to determine if a
> basic::string value is comprised only of numeric digits? I have an
> application that parses a comma-delimited string, and I want to test if
> specific values are strictly numeric. It was working until I got a
> mixed alphanumeric value that started with a numeric digit (e.g.
> "6btt123"), which caused the following code to fail:
>
> int ii = atoi(wStr.c_str());
Never use atoi(), it has now way to indicate failure. Use strtol() and
check errno.
> if(ii) // numeric processing
> {
> // expecting purely numeric value in "ii"
> [etc.]
> }
> else // alphanumeric processing
> {
> // process alphanumeric data
> }
> when it fell into the numeric processing branch.
> I know that I could examine the contents of the "wStr" string
> character-by-character to test if each character is a digit character,
> but that seems slow and inefficient. Is there a better way to do such
> processing? Thoughts? TIA
What are you reading form? iterating a sting is orders of magnitude
faster than reading from a file.
--
Ian Collins
Back to comp.lang.c++ | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Testing for Numeric Digits mrc2323@cox.net (Mike Copeland) - 2012-02-26 15:05 -0700
Re: Testing for Numeric Digits Ian Collins <ian-news@hotmail.com> - 2012-02-27 11:11 +1300
Re: Testing for Numeric Digits Ian Collins <ian-news@hotmail.com> - 2012-02-27 11:22 +1300
Re: Testing for Numeric Digits Paul <pchristor@yahoo.co.uk> - 2012-02-26 16:45 -0800
Re: Testing for Numeric Digits "MikeWhy" <boat042-nospam@yahoo.com> - 2012-02-28 03:17 -0600
Re: Testing for Numeric Digits Paul <pchristor@yahoo.co.uk> - 2012-02-28 03:30 -0800
Re: Testing for Numeric Digits Marc <marc.glisse@gmail.com> - 2012-02-28 15:19 +0000
Re: Testing for Numeric Digits "MikeWhy" <boat042-nospam@yahoo.com> - 2012-02-28 11:04 -0600
Re: Testing for Numeric Digits Andy Champ <no.way@nospam.invalid> - 2012-02-28 20:44 +0000
Re: Testing for Numeric Digits Miles Bader <miles@gnu.org> - 2012-02-27 10:23 +0900
Re: Testing for Numeric Digits scott@slp53.sl.home (Scott Lurndal) - 2012-02-27 17:22 +0000
Re: Testing for Numeric Digits Dombo <dombo@disposable.invalid> - 2012-02-27 20:29 +0100
Re: Testing for Numeric Digits Quint Rankid <qbr567@gmail.com> - 2012-02-28 11:43 -0800
csiph-web