avr Studio Datentyp bool

OP #4362595
Lesenswert?
• ▲
▼
Hallo,
ich habe hier schon gesucht jedoch keine passende Antwort gefunden.
Zwei Fragen hätte ich ! :)

Gibt es im AvrStudio den Datentypen bool ??
Wie deklariere ich diesen wenn es ihn gibt?
Ich brauche in meiem Programm eine Boolvariable.
Diese wird gesetzt wenn ein Taster betätigt wurde.

z.B.:

bool taster_gedrueckt = 0;     ?????

Und was hat es zu bedeuten wenn die Fehlermeldung "variable x set but 
not used [-Wunused-but-set-variable]
Diese Fehlermedung kam bei einer von mir angelegten int- Variable:

int zahl = 0;

Diese "zahl" wurde auch in einer if- Anweisung mit 1 beschrieben. hmm ??

Gruß
Rafel
#4362620
Lesenswert?
• ▲
▼
"Im" AVRStudio gibt es überhaupt keine Datentypen.

Die Sprache C kennt keinen Datentyp bool. Du kannst dir selber einen per 
typedef erfinden, das ändert aber nichts an der Tatsache. Der Rest steht 
in deinem C-Buch.

Die Warnung besagt genau das, was sie besagt: Du schreibst einen Wert in 
eine Variable, machst aber nichts damit.

Oliver
#4362628
Lesenswert?
• ▲
▼
Rafael S. schrieb:
> Gibt es im AvrStudio den Datentypen bool ??
Versuchs mit stdbool.h

> Und was hat es zu bedeuten wenn die Fehlermeldung "variable x set but
> not used [-Wunused-but-set-variable]
Dann greifst du nur schreibend auf die Variable zu.

> Diese "zahl" wurde auch in einer if- Anweisung mit 1 beschrieben. hmm ??
Diese wurde evt. wegoptimiert, da die Bedingung immer falsch ist. Wenn 
du ein Minimalbeispiel postest, können wir dir weiterhelfen.
Gast #4362632
Lesenswert?
• ▲
▼
be s. schrieb:
>> Diese "zahl" wurde auch in einer if- Anweisung mit 1 beschrieben. hmm ??
> Diese wurde evt. wegoptimiert, da die Bedingung immer falsch ist. Wenn
> du ein Minimalbeispiel postest, können wir dir weiterhelfen.

Selbst wenn sie nicht wegoptimiert wurde, ist es immer noch nur ein 
schreibender Zugriff. Nur schreiben und niemals lesen wird als "sinnlose 
Operation" verstanden...
#4362633
Lesenswert?
• ▲
▼
npn schrieb:
> be s. schrieb:
>>> Diese "zahl" wurde auch in einer if- Anweisung mit 1 beschrieben. hmm ??
>> Diese wurde evt. wegoptimiert, da die Bedingung immer falsch ist. Wenn
>> du ein Minimalbeispiel postest, können wir dir weiterhelfen.
>
> Selbst wenn sie nicht wegoptimiert wurde, ist es immer noch nur ein
> schreibender Zugriff. Nur schreiben und niemals lesen wird als "sinnlose
> Operation" verstanden...

Unsinn. Es gibt viele Anwendungsmöglichkeiten:

DON’T CARE BUFFER STORES
LEAST SIGNIFICANT CONTROL MEMORIES
POST MORTEM MEMORIES (WEAPON SYSTEMS)
ARTIFICIAL MEMORY SYSTEMS
NON-INTELLIGENT MICRO CONTROLLERS
FIRST-IN NEVER-OUT (FINO) ASYNCHRONOUS
BUFFERS.
OVERFLOW REGISTER (BIT BUCKET)

vgl. Write Only Memory
#4362636
Lesenswert?
• ▲
▼
npn schrieb:
> Selbst wenn sie nicht wegoptimiert wurde, ist es immer noch nur ein
> schreibender Zugriff. Nur schreiben und niemals lesen wird als "sinnlose
> Operation" verstanden...

Stimmt, habe das irgendwie hineininterpretiert, dass die Variable auch 
gelesen wird. Kommt davon, wenn man während dem Programmieren in einem 
Forum schreibt...

Wo überall auf die Variable zugegriffen wird, sollte sich mit Ctrl-F 
ermitteln lassen.
OP #4362671
Lesenswert?
• ▲
▼
be s. schrieb:
> Rafael S. schrieb:
>> Gibt es im AvrStudio den Datentypen bool ??
> Versuchs mit stdbool.h
>
>> Und was hat es zu bedeuten wenn die Fehlermeldung "variable x set but
>> not used [-Wunused-but-set-variable]
> Dann greifst du nur schreibend auf die Variable zu.
>
>> Diese "zahl" wurde auch in einer if- Anweisung mit 1 beschrieben. hmm ??
> Diese wurde evt. wegoptimiert, da die Bedingung immer falsch ist. Wenn
> du ein Minimalbeispiel postest, können wir dir weiterhelfen.

Johann L. schrieb:
> bool ist Teil von C99:
> #include <stdbool.h>

Danke! :-)
Habe gerade die stdbool.h included.... funzt nun auch! :)

Was die Fehlermeldung angeht => ich habe die Variable deklariert und 
dann auch weiter verarbeitet in form einer zuweisung und später einer 
Abfrage.
Trotzdem kam die Meldung.. erst als ich alles einemal gespeichert habe 
und dann erst "build solution" ausgeführt habe war der Fehler weg.. hmm. 
Hatte ich jetzt mehrmals schon.


Gruß

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.