[PATCH] itoa
Craig Howland
howland@LGSInnovations.com
Mon Dec 8 17:59:00 GMT 2014
On 12/08/2014 12:17 PM, Corinna Vinschen wrote:
> Hi Jon,
>
> On Dec 7 13:34, Jon Beniston wrote:
>> Hi,
>>
>> The attached patch adds support for the itoa and utoa functions, for
>> converting integers to strings.
>>
>> This is a function that is supported on other platforms,
> What other platforms? It appears in K&R, base 10 only, and it appears
> in a Unix manual from 1971(*), but I can't find it in GLibc nor one of
> the BSDs.
>
> The API is rather unsafe, given that the size of the buffer is not
> checked (no size parameter). But what I'm really missing are checks for
> the base parameter being valid. It could be > 36. Or negative.
Microsoft Visual Studio has a "safe" variant which adds the buffer size:
errno_t _itoa_s(
int value,
char *buffer,
size_t sizeInCharacters,
int radix
);
(See http://msdn.microsoft.com/en-us/library/0we9x30h.aspx, where they also have
some other flavors of it. They do define an error return for base out of range.)
>
> I see how this may be useful for embedded targets, but in a standard C
> library, I'm not so sure about.
>
>
> Corinna
>
> (*) http://en.wikibooks.org/wiki/C_Programming/C_Reference/stdlib.h/itoa
>
More information about the Newlib
mailing list