writef: How to output hex byte?

Nick Sabalausky a at a.a
Sat Aug 28 22:06:30 PDT 2010


"Nick Sabalausky" <a at a.a> wrote in message 
news:i5cnrn$30hv$1 at 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.





More information about the Digitalmars-d-learn mailing list