digitalmars.D.learn - My new least favorite one-liner...
- Jude Young (4/4) Nov 05 2011 icon = *(toStringz(text(num)));
- Vladimir Panteleev (8/12) Nov 05 2011 If I understood the problem correctly:
- bearophile (10/13) Nov 05 2011 Are you trying to convert a single-digit number?
- Jude Young (7/20) Nov 05 2011 Nice. Exactly what I was looking for.
- Regan Heath (8/30) Nov 07 2011 You've also got std.ascii.digits which is "0123456789" and
- Dejan Lekic (3/11) Nov 07 2011 I used similar solution to bearophile's before. I must admit i did not k...
icon = *(toStringz(text(num))); icon is a char, num is an integer. I don't suppose there is an easier way to do this? It's too late and ma brains is mushy.
Nov 05 2011
On Sat, 05 Nov 2011 10:29:36 +0200, Jude Young <10equals2 gmail.com> wrote:icon = *(toStringz(text(num))); icon is a char, num is an integer. I don't suppose there is an easier way to do this? It's too late and ma brains is mushy.If I understood the problem correctly: icon = text(num)[0]; -- or -- icon = cast(char)('0' + num); -- Best regards, Vladimir mailto:vladimir thecybershadow.net
Nov 05 2011
Jude Young:icon = *(toStringz(text(num))); icon is a char, num is an integer.Are you trying to convert a single-digit number? import std.stdio; void main() { int x = 5; // in [0 .. 10] char c = cast(char)(x + '0'); writeln(c); } Bye, bearophile
Nov 05 2011
Nice. Exactly what I was looking for. I knew I was missing something tiny. Now I just need to figure out why that works and I can say I've learned something! Thanks guys, Jude On Sat, Nov 5, 2011 at 5:38 AM, bearophile <bearophileHUGS lycos.com> wrote:Jude Young:icon = *(toStringz(text(num))); icon is a char, num is an integer.Are you trying to convert a single-digit number? import std.stdio; void main() { int x = 5; // in [0 .. 10] char c = cast(char)(x + '0'); writeln(c); } Bye, bearophile
Nov 05 2011
On Sun, 06 Nov 2011 04:39:28 -0000, Jude Young <10equals2 gmail.com> wrote:Nice. Exactly what I was looking for. I knew I was missing something tiny. Now I just need to figure out why that works and I can say I've learned something! Thanks guys, Jude On Sat, Nov 5, 2011 at 5:38 AM, bearophile <bearophileHUGS lycos.com> wrote:You've also got std.ascii.digits which is "0123456789" and std.string.digits which is an alias of it, so you can say: import std.ascii; (or std.string) int x = 5; char c = std.ascii.digits[x]; -- Using Opera's revolutionary email client: http://www.opera.com/mail/Jude Young:icon = *(toStringz(text(num))); icon is a char, num is an integer.Are you trying to convert a single-digit number? import std.stdio; void main() { int x = 5; // in [0 .. 10] char c = cast(char)(x + '0'); writeln(c); }
Nov 07 2011
Regan Heath wrote:You've also got std.ascii.digits which is "0123456789" and std.string.digits which is an alias of it, so you can say: import std.ascii; (or std.string) int x = 5; char c = std.ascii.digits[x];I used similar solution to bearophile's before. I must admit i did not know about std.ascii.digits[], thanks for the info Regan.
Nov 07 2011