digitalmars.D.learn - writefln + unsigned numbers
- david <tazz gmx.at> Apr 16 2007
- Johan Granberg <lijat.meREM OVEgmail.com> Apr 16 2007
Hello,
when playing with an array and indices that are later shifted to < 0,
I found the following rather not intuitive behaviour:
import std.stdio;
void main()
{
uint j;
writefln(j - 2);
}
results in 4294967294.
I'm aware of the construction of uint,
but shouldn't j be automatically converted
to a larger type providing negative numbers (long) ?
david
Apr 16 2007
david wrote:Hello, when playing with an array and indices that are later shifted to < 0, I found the following rather not intuitive behaviour: import std.stdio; void main() { uint j; writefln(j - 2); } results in 4294967294. I'm aware of the construction of uint, but shouldn't j be automatically converted to a larger type providing negative numbers (long) ? david
Why should it, that would cause even more confusion. In my opinion it should either be illegal (and caught at compile time) or stay as is.
Apr 16 2007








Johan Granberg <lijat.meREM OVEgmail.com>