Casting gremlins
Todd
toddtitus at mindspring.com
Wed Oct 10 16:54:51 PDT 2007
Frits van Bommel Wrote:
> Todd wrote:
> > In C it was possible to cast a Uint to a Char[], however, I can't seem to get it to compile in D.
> >
> > example: I have
> >
> > uint data1;
> > long data;
> > long lblonedata;
> > .
> > .
> > .
> > char[] dataone = cast(char[]) data1;
> > lblonedata = atoi(dataone);
> >
> > I'm importing std.string, std.conv;
> >
> > and get e2ir: cannot cast uint to char[]
> >
> > I was using dmd 1.022 and switched to 2.x today with no help.
> > Does D use a different method? or I'm I missing something obvious?
>
> In C, an array is just a pointer. In D it also contains a length (unless
> it's a static array, in which case that's encoded in the type).
> You could try casting to a pointer instead, but casting between pointer
> and non-pointer types usually means you're doing something wrong. What
> is it exactly that you're trying to achieve here?
I have a function that returns an uint, we'll call it 'data1'. from there, I'm trying to cast it to a char to insert into a textbox, similiar to 'mini-calc'. I know it's simple, but it seems to be escaping me at the moment.
Thanks for the reply,
Todd
More information about the Digitalmars-d-learn
mailing list