I tried both StringFormat() and PrintFormat(), but both seem to be experiencing integer overflow instead of printing the correct value. UPDATE: It seems that using `%I64d`instead of `%d` works, I'm guessing it's indicating the data used will be 64 bits, however, the HistoryDealGetTicket() documentation uses `%d` and for some reason seems to work just fine... Any help to understand this is highly appreciated.
h | l | ll | I32 | I64
Specification of data sizes, passed as a parameter.
Parameter Type
Used Prefix
Joint Specifier of Type
long
ll (two lower case L)
d, i, o, x, or X
long
I64
d, i, o, x, or X
ulong
I64
o, u, x, or X
type
Type specifier is the only obligatory field for formatted output.
Symbol
Type
Output Format
d
int
Signed decimal integer
i
int
Signed decimal integer
u
int
Unsigned decimal integer
h | l | ll | I32 | I64
Specification of data sizes, passed as a parameter.
Parameter Type
Used Prefix
Joint Specifier of Type
long
ll (two lower case L)
d, i, o, x, or X
long
I64
d, i, o, x, or X
ulong
I64
o, u, x, or X
type
Type specifier is the only obligatory field for formatted output.
Symbol
Type
Output Format
d
int
Signed decimal integer
i
int
Signed decimal integer
u
int
Unsigned decimal integer
Thanks!
So in a nutshell, I can use "%i64d" or "%u" to display the information. The part I still don't understand is the example in the documentation, as it uses the format specifier "%d" and it seems to work fine, but when I try to use it, it overflows the integer value, or at least I think that's what's happening.

- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Hey all,
I'm experimenting with accessing the deal history, however, I can't seem to get the correct format specifier to properly display long values.
Here's my code:
I tried both StringFormat() and PrintFormat(), but both seem to be experiencing integer overflow instead of printing the correct value.
UPDATE:
It seems that using `%I64d`instead of `%d` works, I'm guessing it's indicating the data used will be 64 bits, however, the HistoryDealGetTicket() documentation uses `%d` and for some reason seems to work just fine... Any help to understand this is highly appreciated.