Odd to!string call
Simen kjaeraas
simen.kjaras at gmail.com
Tue Dec 21 10:43:46 PST 2010
Andrej Mitrovic <none at none.none> wrote:
> I found this by accident:
>
> import std.stdio;
> import std.conv;
>
> void main()
> {
> writeln(to!string(2, 2)); // writes 10
> writeln(to!string(1, 0)); // std.conv.ConvException: Radix error
> }
>
> I'm not sure why "std.conv.to" would even take multiple arguments.
> Bugzilla?
The second parameter is (as indicated by the exception) the radix[1].
With a radix of 2, 2 is written 10, as radix is binary. Radix 0 makes
no sense, and thus gives an exception.
It could be said though, that std.conv's documentation is confusing
at best, and this could be worth putting in Bugzilla.
[1]:
http://en.wikipedia.org/wiki/Radix#Bases_and_positional_numeral_systems
--
Simen
More information about the Digitalmars-d-learn
mailing list