#INTEGER_min=-9223372036854775808 : #INTEGER_max=9223372036854775807
Nun funktioniert Val(Inp$) aber nur für Quads, liefert also Unsinn, wenn die Ziffernfolge z.B. aus 30 Ziffern besteht.
Wie überprüfe ich exakt (!), ob die Eingabe zwischen #INTEGER_min und #INTEGER_max liegt?
Übrigens habe ich das Problem mit 32/64-Bit mit folgender Compileroption gelöst:
Code: Alles auswählen
CompilerIf #PB_Compiler_OS = #PB_OS_Windows And #PB_Compiler_Processor = #PB_Processor_x86
;32 Bit Windows
#INTEGER_min=-2147483648 : #INTEGER_max=2147483647
CompilerElseIf #PB_Compiler_OS = #PB_OS_Windows And #PB_Compiler_Processor = #PB_Processor_x64
;64 Bit Windows
#INTEGER_min=-9223372036854775808 : #INTEGER_max=9223372036854775807
CompilerElse
CompilerError "Windows and 32/64 Bit only"
CompilerEndIf