2009-05-19 11 views

risposta

11

Non conoscendo Delphi, scommetto che la "X" fa in modo che la funzione assuma che il valore sia esadecimale. Dal momento che 0x5 == 5, sembra funzionare. Prova X10 e vedi se torni 16.

1

È una notazione esadecimale. Prova XF a vederlo restituire 15.

+2

F è 15, non 16. – Pesto

0

Probabilmente notazione hexadecimal.

La X indica che il numero che segue è esadecimale (0-9 + A-F).

11

In Delphi, valori esadecimali sono contrassegnati con $ prefisso:

a := $10; // => a = 16 

Ma dal momento che in alcune altre lingue (ad esempio C) X viene utilizzato per la marcatura di valori esadecimali, funzione StrToInt supporta sia $ e prefissi X, in modo da entrambi i codici seguenti restituiscono 16:

a := StrToInt('x10'); // => a = 16 

a := StrToInt('$10'); // => a = 16 
Problemi correlati