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.
1.: Vor dem nächsten Posting die Foren-Regeln lesen! 2.: Ohne Dein Programm zu sehen, kann man dazu gar nichts vernünftiges sagen.
zu jedem If gehört ein Then und EndIf !! Strukturierte Programmierung !! Den Quelltext der If Anweisung einrücken, dann behält man den Überblick Aber ohne Dein Programm wird hier niemand was dazu sagen können.
Stephan Henning wrote:
> zu jedem If gehört ein Then und EndIf !!
Nö, in C nicht!
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
> ich habe den code aus firmeninternen gründen auf einem anderen rechner
Jo, die Foren-Regeln, die Du offensichtlich immer noch nicht gelesen
hast, sind aber nicht auf dem anderen Rechner...
@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 !!
>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.
>Ich frage jetzt nicht warum ein IF wenn kein Then.
C kennt weder then noch endif ;-)
if (Bedingung){
MachWas;
}
Mit den Klammern kann man allerdings auch struktuieren.
Gruß
Jens
Gast wrote: > ich habe den code aus firmeninternen gründen auf einem anderen rechner, > der keinen i net zugang haben darf, Warum nur?
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.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.