If abfrage wird in der Schleife nicht wiederholt

Gast #719500
Lesenswert?
• ▲
▼
Hy
ich programmiere gerade einen atmega 8 in c.
Dabei habe ich mehrere if abfragen in einer schleife geschrieben und 
diese sollten sich eigentlich beim wiederholen der schleife 
aktualisieren. Dies tuhen sie aber nicht.
Jetzt habe ich schon ein wenig rumgespielt, und habe meine abfragen zum 
test in die mainloop geschrieben und dort hat es nun funktioniert.
Ich bin daher etwas ratlos und hoffe auf eure hilfe
wenn jemand ideen oder tips hat dann bitte helft mir.
Gast #719529
Lesenswert?
• ▲
▼
achso
ich habe den code aus firmeninternen gründen auf einem anderen rechner, 
der keinen i net zugang haben darf, daher ist es momentan schwer den 
code hochzuladen, ich versuche jedoch dieses im laufe des tages nach 
hole
#720209
Lesenswert?
• ▲
▼
@Johannes,
> zu jedem If gehört ein Then und EndIf !!
Nö, in C nicht!

wie auch immer Du das machst, unser Kandidat hat offensichtlich den 
Überblick verloren, und den hat man nur mit Struktur.
Also sollte man Then und EndIf nutzen um sich eine ordentliche 
Programmierung an zu gewöhnen.

Ich frage jetzt nicht warum ein IF wenn kein Then.
Sowas nutze ich in ASM nicht !!!
Du kannst doch machen was Du willst. Es ist Dein Proggi.
Neulingen muß man aber keine schlechten Gewohnheiten beibringen !!
Gast #720236
Lesenswert?
• ▲
▼
>Also sollte man Then und EndIf nutzen um sich eine ordentliche
>Programmierung an zu gewöhnen.

Nö, immer noch nich! In C gibt's das nicht!
Und Basic für 'nen ordentlichen Programmierstil zu empfehlen...

Der OP programmiert offensichtlich in C:

>ich programmiere gerade einen atmega 8 in c.
Persönliche Seite #720315
Lesenswert?
• ▲
▼
Gast wrote:
> achso
> ich habe den code aus firmeninternen gründen auf einem anderen rechner,
> der keinen i net zugang haben darf, daher ist es momentan schwer den
> code hochzuladen, ich versuche jedoch dieses im laufe des tages nach
> hole

Der Compiler nimmt wahrscheinlich an, dass sich in der Schleife die 
Bedingung der if-Abfrage nicht ändert und optimiert das Ganze.

Beachte den Hinweis auf volatile als Schlüsselwort vor Variablen und 
Funktionen, d.h. du macht dem Compiler bekannt, dass sich z.B. eine 
Variable anderswo (Interrupt?) ändert.

Wenn du das nicht hinbekommst, dann denk dir einen Ersatzcode aus, 
Teste, ob das Problem reproduzierbar ist. Porte den Ersatzcode.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren