On Wednesday, 2 April 2014 at 00:34:08 UTC, bearophile wrote:
char[] rep = "regan\0".dup;
s.send(cast(ubyte[])rep);
casts are dangerous, because they silently assume you know what
you are doing. As first try I suggest you to remove every
cast() from your D program, and replace them with to!() or
other functions like toStringz. Sometimes this is not the most
efficient thing to do, but it's safer, so it's better when you
start to learn D.
Bye,
bearophile
Thanks for your reply. As for cast, I seems not to have any
option, because to! doesn't work as I would expect it. It would
return me an array of numbers, instead of a string; So I kept the
cast here, since I certainly know what it's doing -for now-.
I generally use immutables, you caught me, here :-). As of main
and return, I was not aware we could just ignore them if we
didn't need them. I love explicit programming.
However, I'm still stuck with toStringz(). Since it returns an
immutable(char[]), I can't find how to pass it to Socket.send(),
and I do not seem to be able to cast away the immutable :-s
Alexandre