Home » U++ Library support » U++ Core » int64 formating
int64 formating [message #26998] |
Sat, 19 June 2010 22:39 |
Zbych
Messages: 327 Registered: July 2009
|
Senior Member |
|
|
Hi,
Format doesn't work with 64-bit variables on 32-bit platform. All (u)int64 numbers are shown as (u)int32. For example:
PromptOK(Format("%ld 0x%lX",(int64)123456789012LL, (int64)0x123456789012LL));
I think that new formats ("lld, "llx", "llX", ..) should be registered in IntDoubleRegister and IntFormatter should cast variables to int64 instead of int.
[Updated on: Sat, 19 June 2010 22:39] Report message to a moderator
|
|
|
Re: int64 formating [message #27000 is a reply to message #26998] |
Sun, 20 June 2010 17:48 |
|
mirek
Messages: 14105 Registered: November 2005
|
Ultimate Member |
|
|
Zbych wrote on Sat, 19 June 2010 16:39 | Hi,
Format doesn't work with 64-bit variables on 32-bit platform. All (u)int64 numbers are shown as (u)int32. For example:
PromptOK(Format("%ld 0x%lX",(int64)123456789012LL, (int64)0x123456789012LL));
|
Technically, I think it is OK as 'ld' and 'lX' are "long" variants, which in effect means 32bits (implementation defined, but with MSC and GCC, it is so).
Quote: |
I think that new formats ("lld, "llx", "llX", ..) should be registered in IntDoubleRegister and IntFormatter should cast variables to int64 instead of int.
|
Yes. Done.
Mirek
|
|
|
|
Goto Forum:
Current Time: Fri Nov 01 00:38:17 CET 2024
Total time taken to generate the page: 0.01918 seconds
|