danke, ja das war nicht aufmerksam genug aus einer anderen Stelle des Codes der mit integer arbeitet kopiert. Mit integer (oder floats die sich um mindestens 0.5 unterschieden) geht es wie ich es geschrieben habe (auch ohne sign). Aber in meinem Fall hatte ich tatsächlich sehr kleine Floatwerte.