Thread overview | ||||||
---|---|---|---|---|---|---|
|
August 29, 2010 writef: How to output hex byte? | ||||
---|---|---|---|---|
| ||||
I'm having trouble understanding the docs on this. From what I could tell, it seemed like both of these should work: writef("%.2X", myByte); writef("%02X", myByte); But both of them just simply print the format string as-is. |
August 29, 2010 Re: writef: How to output hex byte? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | "Nick Sabalausky" <a@a.a> wrote in message news:i5cnrn$30hv$1@digitalmars.com... > I'm having trouble understanding the docs on this. From what I could tell, it seemed like both of these should work: > > writef("%.2X", myByte); > writef("%02X", myByte); > > But both of them just simply print the format string as-is. I gotta learn not to simplify my test cases without re-testing them... The above examples work fine, but the following don't - what I'm trying to do here is output a percent sign followed by a hex byte (as in URL escape sequences), but these just output "%%02X": ubyte myByte = 0x09; writef("%%%.2X", myByte); writef("%%%02X", myByte); I know I can easily work around that, but I'm wondering if this is a bug or if I've misunderstood how that format syntax is supposed to work. |
August 29, 2010 Re: writef: How to output hex byte? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | On 29.08.2010 07:06, Nick Sabalausky wrote:
> ubyte myByte = 0x09;
> writef("%%%.2X", myByte);
> writef("%%%02X", myByte);
On codepad.org (DMD 1.026 last time I checked), this prints this:
%09%09
So it's probably a bug in the new formatting code. I assume it's supposed to follow the C behavior in this case.
|
August 31, 2010 Re: writef: How to output hex byte? | ||||
---|---|---|---|---|
| ||||
Posted in reply to torhu | "torhu" <no@spam.invalid> wrote in message news:i5cqgo$37l$1@digitalmars.com... > On 29.08.2010 07:06, Nick Sabalausky wrote: >> ubyte myByte = 0x09; >> writef("%%%.2X", myByte); >> writef("%%%02X", myByte); > > On codepad.org (DMD 1.026 last time I checked), this prints this: > %09%09 > > So it's probably a bug in the new formatting code. I assume it's supposed to follow the C behavior in this case. http://d.puremagic.com/issues/show_bug.cgi?id=4775 |
Copyright © 1999-2021 by the D Language Foundation