Nicht angemeldet. · Kennwort vergessen · Registrieren

oq49ocil
Mitglied seit 12/2010
18 Beiträge
Betreff: initialization discards qualifiers from pointer target type (Ich weis netmehr weiter^^)
Der Name des Thema ist gleichzeitig der Fehler den ich immer rausbekomme.

Das is die Zeile wo er den Fehler angibt:

uint8_t *Ports[] = {&PORTD, &PORTC, &PORTC, &PORTC, &PORTC, &PORTA, &PORTA, &PORTA};

Kann mir jemand helfen was ich falsch gemacht habe beim pointer array erstellen Oo?

mfg oq49ocil
Steppenwolf
GSPiC-Übungsleiter
Mitglied seit 05/2011
31 Beiträge
Hi,

die Compilermeldung ist so zu verstehen, dass du durch deine Zuweisung einen "Qualifier" vom Zeigertyp wegschmeisst (to discard), was du eben nicht sollst/darfst. Schau dir mal an, mit welchem Typ PORTD usw. definiert sind (steht auch in den Vorlesungsfolien), dann weisst du auch, welchen "Qualifier" du bei deinem Zeigerfeld brauchst.
Steppenwolf
GSPiC-Übungsleiter
Mitglied seit 05/2011
31 Beiträge
Wenn du nicht weiter weisst, dann ruehr dich nochmal, dann gebe ich dir weitere Hinweise.
oq49ocil
Mitglied seit 12/2010
18 Beiträge
Also ich hab hier ins Script geschaut aber den Fehler find ich beim besten willen net >.<.
Vorallem weil wir das schon so ähnlich in der Übung stehn hatten und ich meines erachtens nach nix wesentliches geändert hab ^^.
Steppenwolf
GSPiC-Übungsleiter
Mitglied seit 05/2011
31 Beiträge
OK, also ein Qualifier ist z. B. "volatile" oder "const". Als was fuer ein (dereferenzierter) Zeiger ist denn PORTD definiert? Schau dir mal Vorlesungsfolie 14-8 an...
oq49ocil
Mitglied seit 12/2010
18 Beiträge
Naja wohl eher volatile ...
Aber ich dachte eigentlich ich muss da netmehr mehr schreiben Oo
Hab ja oben auch dieses include <... /io.h> stehn

Edit: Wenn ich aber noch ein volatile davorpack dann krieg ich keine compilerfehler mehr sondern nur ein "failed" am ende des buildens

Edit: Und schneidet der / Operator die kommastellen einfach ab wenn er integer übergeben bekommt?

Edit: Also das erste problem hab ich jetzt netmehr ... jetzt interessiert mich nurnoch das mit der nachkommastelle und ob ich in meinem testprogramm auch falsche zahlen einsetzen soll und ob ich dann ein signal geben soll wenn die funktion einen error zurückliefert...
Dieser Beitrag wurde 3 mal verändert, zuletzt am 07.07.2011, 17:29 von oq49ocil.
sicherha
Informatik-Veteran
Mitglied seit 10/2010
53 Beiträge
Zitat von oq49ocil:
Edit: Wenn ich aber noch ein volatile davorpack dann krieg ich keine compilerfehler mehr sondern nur ein "failed" am ende des buildens
Irgendwo wird er schon noch motzen. Dass der Compiler bei irgendeinem Fehler völlig still abbricht, wäre mir neu.

Zitat von oq49ocil:
Edit: Und schneidet der / Operator die kommastellen einfach ab wenn er integer übergeben bekommt?
Richtig.
oq49ocil
Mitglied seit 12/2010
18 Beiträge
Weis jemand was einen    Error    1    void value not ignored as it ought to be   auslösen könnte?
sicherha
Informatik-Veteran
Mitglied seit 10/2010
53 Beiträge
Der Compiler sagt dir doch bestimmt ganz genau die Nummer der Zeile, die für diesen Fehler verantwortlich ist.
oq49ocil
Mitglied seit 12/2010
18 Beiträge
Joa ich war selber Schuld ;) nach etlichen Stunden proggen und nen Teilweise echt bösen Tunnelblick hab ich beim aufrufen einer void Funktion geschrieben : funktion()); Tjo und das es ne void fkt is darf ich natürlich kein ) übergeben :D.

Danke für die Hilfe hatte zwar keine Zeit mehr mein Programm vorm abgeben zu testen ... aber sah ganz gut aus :P
Schließen Kleiner – Größer + Auf diesen Beitrag antworten:
Prüfcode: VeriCode Gib bitte das Wort aus dem Bild ins folgende Textfeld ein. (Nur die Buchstaben eingeben, Kleinschreibung ist in Ordnung.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O :troll:
Weitere Zeichen:
Gehe zu Forum
Powered by the Unclassified NewsBoard software, 20110527-dev, © 2003-8 by Yves Goergen