Hallo Neuuser!
Manchmal gibt es eben solche Eigenarten.
Ist mir auch schon untergekommen....
Vielleicht solltest du aber in Zukunft den Programmcode "sauberer" gestalten.
BASCOM ist auch "nur" eine Hochsprache und was letztlich daraus genau kompiliert wird können nur ASM-Leute bewerten.
Ich habe bei einigen Programmen mal festgestellt, dass z.B. der IF-Befehl immer vollständig sein sollte....
Also:
IF var = 1 Then
PORTB.1 = 1
Else
End if
"Damals" hatte ich immer das ELSE weggelassen, weil ich es nicht brauchte.
Später bekam ich unerklärliche Probleme.......
Als ich alle IF-Anweisungen vervollständigt hatte, waren meine Probleme weg.
Es kann aber auch sein, dass es heute diese Probleme nicht mehr gibt... schließlich habe ich seit dem einige BASCOM-Updates eingespielt.
Das Gleiche gilt beim Verschachteln.
Nicht immer wieder neue IF-Anweisungen öffnen und erst am Ende die nicht genutzten ELSE-Anweisungen abarbeiten lassen.
Grundsätzlich sieht eine IF-Anweisung immer so wie oben beschrieben aus!
Mit der "Kurzform" :
IF Var = 1 Then PORTB.1 = 1
wäre ich vorsichtiger.
Sicher kann man sie verwenden. Allerdings würde ich es nicht verschachteln oder mit "AND" und "OR" erweitern.
Wie Eingangs aber schon geschrieben, dass sind meine persönlichen Erfahrungen mit BASCOM.
Schöne Grüße,
Cassio
Manchmal gibt es eben solche Eigenarten.
Ist mir auch schon untergekommen....
Vielleicht solltest du aber in Zukunft den Programmcode "sauberer" gestalten.
BASCOM ist auch "nur" eine Hochsprache und was letztlich daraus genau kompiliert wird können nur ASM-Leute bewerten.
Ich habe bei einigen Programmen mal festgestellt, dass z.B. der IF-Befehl immer vollständig sein sollte....
Also:
IF var = 1 Then
PORTB.1 = 1
Else
End if
"Damals" hatte ich immer das ELSE weggelassen, weil ich es nicht brauchte.
Später bekam ich unerklärliche Probleme.......
Als ich alle IF-Anweisungen vervollständigt hatte, waren meine Probleme weg.
Es kann aber auch sein, dass es heute diese Probleme nicht mehr gibt... schließlich habe ich seit dem einige BASCOM-Updates eingespielt.
Das Gleiche gilt beim Verschachteln.
Nicht immer wieder neue IF-Anweisungen öffnen und erst am Ende die nicht genutzten ELSE-Anweisungen abarbeiten lassen.
Grundsätzlich sieht eine IF-Anweisung immer so wie oben beschrieben aus!
Mit der "Kurzform" :
IF Var = 1 Then PORTB.1 = 1
wäre ich vorsichtiger.
Sicher kann man sie verwenden. Allerdings würde ich es nicht verschachteln oder mit "AND" und "OR" erweitern.
Wie Eingangs aber schon geschrieben, dass sind meine persönlichen Erfahrungen mit BASCOM.
Schöne Grüße,
Cassio