Code
Global $a = "0x7FFE6E84D380", $b = "0xFFFFFFF2"
ConsoleWrite(Hex(_SumStrings(Hex2Dec($a), Hex2Dec($b))) & @CRLF)
Func Hex2Dec($iN)
Local $aN, $ihex = 0
$aN = StringSplit(StringTrimLeft($iN, 2), "", 1)
For $x = 1 To UBound($aN) - 1
$ihex += Dec($aN[$x]) * (16 ^ (UBound($aN) - 1 - $x))
Next
Return $ihex
EndFunc ;==>Hex2Dec
Func _SumStrings($addend1,$addend2)
Local $Lenght, $tocarry = 0, $Sum = "", $c, $SubTotal
If Not IsString($addend1) Then $addend1 = String(Int($Addend1))
If Not IsString($addend2) Then $addend2 = String(Int($Addend2))
If not StringIsInt($addend1) Or not StringIsInt($addend2) Then
Exit
EndIf
If StringLen($addend1) > StringLen($addend2) Then
$Lenght = StringLen($addend1)
Else
$Lenght = StringLen($addend2)
EndIf
If $Lenght <= 3 Then
$Lenght = 3
Else
$Lenght = $Lenght + Mod($Lenght,3)
EndIf
While StringLen($Addend1) <> $Lenght
$Addend1 = "0" & $Addend1
Wend
While StringLen($Addend2) <> $Lenght
$Addend2 = "0" & $Addend2
Wend
For $c = 1 to $Lenght/3
$SubTotal = Int(StringRight($addend1,3)) + Int(StringRight($addend2,3)) + $ToCarry
If $SubTotal > 999 Then
$ToCarry = Int($SubTotal/1000 )
Else
$ToCarry = 0
EndIf
String($SubTotal)
While StringLen($SubTotal) < 3
$SubTotal = "0" & $SubTotal
Wend
$Sum = StringRight($Subtotal,3) & $Sum
$Addend1 = StringTrimRight($Addend1,3)
$Addend2 = StringTrimRight($Addend2,3)
Next
While StringInStr($sum,"0") = 1
$Sum = StringTrimLeft($sum,1)
Wend
Return $sum
EndFunc
Alles anzeigen
(Die Funktionen sind nicht von mir)