Re: convert from alpha to int
- From: Kjell Ahlstedt <kjell ahlstedt bredband net>
- To: Arbol One <arbolone gmail com>
- Cc: gtkmm-list gnome org
- Subject: Re: convert from alpha to int
- Date: Mon, 19 Mar 2012 10:01:39 +0100
Hi,
I don't know of any way that is both good and easy.
atoi() is easy to use, but not very good. Both atoi("2") and
atoi("2Hello") will be returned as 2.
Better, but not as easy is
char* endp = 0;
long i = strtol(s, &endp, 10);
if (*endp == '\0')
// It's a number.
Not even this is perfect. If you want to accept trailing blanks, you
have to complicate it further. And I don't know how well it works in a
totally international program. E.g. I don't know if it accepts Arabic
digits (٠١٢٣٤٥٦٧٨٩).
Kjell
2012-03-19 08:38, Yann Leydier skrev:
Hi,
I don't know if Glib has functions to perform such a check, but
standard C does:
http://www.cplusplus.com/reference/clibrary/cctype/
If you know that the string's digital value cannot be 0, then you can
also check a non-null return to atoi or atol (in cstdlib).
yann
On 18/03/12 20:49, Arbol One wrote:
Thank you for your prompt response.
I am sorry, I don't think I explained myself well enough. If the user
enters the number 24 in an Gtk::Entry, how can I check if the entry is
actually a number and not a character string?
thank in advance
*From:*Kjell Ahlstedt [mailto:kjell ahlstedt bredband net]
*Sent:* Thursday, March 15, 2012 11:12 AM
*To:* Arbol One
*Cc:* gtkmm-list gnome org
*Subject:* Re: convert from alpha to int
2012-03-15 13:53, Arbol One skrev:
Does Glibmm provide a way to convert an character value to an integer
value?
TIA
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]