There is String.toInt()
, but no String.toLong()
or the many other variations. Do I have to resort to atol(String.c_str())
or is there a better way to convert a String
to a long?
2 Answers
Using atol(String.c_str())
looks OK to me. If there was a String.toLong()
it would be written that way anyway.
In fact, looking at the code for String.toInt()
that's exactly what it does:
long String::toInt(void) const
{
if (buffer) return atol(buffer);
return 0;
}
So the answer is: use String.toInt()
.
-
1Interesting. I wonder why they didn't just call it
toLong()
?? Commented Aug 24, 2017 at 0:20
So the answer is: use String.toInt().
Probably not, as this is the definition of a String method:
long String::toInt(void) const
The real work is:
atol(buffer);
ASCII to long.