Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

zusammengesetzte arithmetische Ausdrücke Kategorie: Programmierung C (von ER - 26.08.2009 10:39)
Ich nutze:
C-Control Pro Mega32
Hallo zusammen,
bei meinen Aktivit├Ąten zur Umsetzung meiner Programme von der CC1 auf die CC Pro
bin ich auf etwas gesto├čen, was sehr fragw├╝rdig ist:
Folgender Code l├Ąsst sich fehlerfrei compilieren.
Die Funktion liefert die Werte 0x0A f├╝r OK oder 01 - Fehler zur├╝ck.
Das Programm kommt aus der Schleife nicht mehr raus.
Der arithmetische Ausdruck wird anscheinend nicht korrekt
aufgel├Âst. Wird immer zu 1 berechnet.

void DS2482WIRE_WAITIDLE(void)
{
DS2482WT:
if ((DS2482GET_STATUS() & 1) > 0) goto DS2482WT;
}


Der Code funktioniert, wenn man die Berechung aus der Klammer
herausl├Âst:

void DS2482WIRE_WAITIDLE(void)
{
DS2482WT:
buffer=DS2482GET_STATUS() & 1;
if (buffer > 0) goto DS2482WT;
}

Was Ist da los? Also der B++ Compiler vom Stefan Tapertzhofen kann so etwas
problemlos bearbeiten.

mfg
Ellen


    Antwort schreiben


Antworten:

Re: zusammengesetzte arithmetische Ausdrücke (von PeterS - 26.08.2009 17:43)
    Re: zusammengesetzte arithmetische Ausdrücke (von ER - 27.08.2009 8:40)
        Re: zusammengesetzte arithmetische Ausdrücke (von PeterS - 27.08.2009 11:55)
            Re: zusammengesetzte arithmetische Ausdrücke (von ER - 28.08.2009 16:02)