Boost logo

Boost Users :

Subject: Re: [Boost-users] boost::format, print hex
From: Lloyd (lloyd_at_[hidden])
Date: 2010-07-09 11:09:15


changing int to simpe "unsigned char" did not work (It prints '0-'). I
changed it to

ss<<boost::format("%|02X|")%(int)(unsigned char)(a[0]);

Now it works. But looks dirty, is it the right way?

Thanks a lot,
  Lloyd

----- Original Message -----
From: "Eric J. Holtman" <eric_at_[hidden]>
To: <boost-users_at_[hidden]>
Sent: Friday, July 09, 2010 8:32 PM
Subject: Re: [Boost-users] boost::format, print hex

> change to "unsigned char".
>
> You're getting bitten by sign extension.
>
>
> On 7/9/2010 9:57 AM, Lloyd wrote:
>> Thansk Igor, it works in that case. But it is not working in this case...
>>
>> char a[10];
>> a[0]=0xFA;
>> stringstream ss;
>> ss<<boost::format("%|02X|")%(int)(a[0]);
>> cout<<ss.str()<<endl;
>>
>> It prints FFFFFFFA
>>
>
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-users
>

______________________________________
Scanned and protected by Email scanner


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net