Seite 3 von 3

Verfasst: 07.05.2007 23:04
von Kaeru Gaman
mk-soft hat geschrieben:Das ist eine normales Verhalten von den Prozessor bei Addition und somit
in der Verantwortung des Programmierers Bereichsfehler zu vermeiden.
SIC!

...und somit beweist sich wieder der alte spruch:

die obere grenze für die leistungsfähigkeit eines programmes ist die intelligenz des programmierers.

allerdings:
ich würde mir auch wünschen, dass bei der verwendung von Char-Variablen in For-schleifen zumindest eine Kompilerwarnung ausgegeben wird.
auch wenn es keinen vernünftigen grund gibt, für eine For-schleife einen kleineren datentyp als LONG zu verwenden.

Verfasst: 08.05.2007 10:47
von jear
Die Hilfe zu ändern, um das Problem zu beseitigen ist ja wohl der billigste Weg. Besser wäre natürlich, wenn im PB-Compiler solche Schnitzer ausgebügelt würden.

Mein Kode benutzt keine Char-Variablen in Schleifen. Er demonstriert einfachste Größenvergleiche von Char-Variablen, die auch bei der Behandlung als Charakter eigentlich richtig aufgelöst werden müssten.

Ich bleibe dabei: Es ist ein Bug, der nicht durch Ändern der Hilfe gelöst werden sollte!

Code: Alles auswählen

; jear 070507
; Test Char

Dim wert.c(5)

Define.c min, max, HC

wert(0) = 87
wert(1) = 210
wert(2) = 150
wert(3) = 92
wert(4) = 252
wert(5) = 15

min = 255 : max = 0

For ix = 0 To 5
  HC = wert(ix)
  Debug Str(ix) + ".Wert ist : " + Str(HC)
  If HC < min : min = HC : Debug "min neu = " + Str(min) : EndIf
  If HC > max : max = HC : Debug "max neu = " + Str(max) : EndIf 
Next

Debug "min = " + Str(min)
Debug "max = " + Str(max)