In the function
getNumber in Listing 23.12, the comment for the default case is “Something unexpected - need to send back an error”. It should be something more like “No more digits - return the value”.
return value statement after the
while statement will never be reached, will it? (Edit: Now I see. It gets there if the end of the input string is reached.)