Forum: PC-Programmierung Hilfe bei Pointer


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Michael (oti)


Lesenswert?

Denke, dass ich Pointer ... verstanden habe und um es zu testen diesen 
Code.
Verzweifle an der Fehlermeldung dieses einfachen Codes (PlatformiO)

#include <Arduino.h>
int *p;       // Pointer auf eine int-Variable
int i = 5;    // int Variable i mit Wert 5
p = &i;       // p enthält Speicheradresse der Variablen i
void setup() {
}
void loop() {
}

Deklaration von p = &i erzeugt Fehlermeldung: this declaration has no 
storage class or type specifierC/C++(77)

void setup erzeugt Fehlermeldung: conflicting declaration 'int ptr'

Kann mir da Jemand auf die Sprünge helfen. Wolle dann mit serial.print 
die entspreechenden adressen und werte ausgeben.

Danke. Könnt mich ruhig beschimpfen, wenn ich doch zu blöd bin. Ich 
weiß, Dummheit hat viele Gesichter, auch meins.

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

Ausführbarer Code (wie die Zuweisung) kann nur in einer Funktion (oder 
Methode) stehen.  Oder als Initializer schreiben:
1
int i = 5;
2
int *p = &i;

von Michael (oti)


Lesenswert?

Johann L. schrieb:
> Ausführbarer Code (wie die Zuweisung) kann nur in einer Funktion (oder
> Methode) stehen.  Oder als Initializer schreiben:
>
1
> int i = 5;
2
> int *p = &i;
3
>

Da danke ich Dir sehr. Das ergibt für mich sofort Sinn.
Mein Unwissen ist nun beseitigt. Habe nicht geschnallt, dass das ein 
ausführbarer Code war.

: Bearbeitet durch User
von Gunnar F. (gufi36)


Lesenswert?

Michael schrieb:
> Mein Unwissen ist nun beseitigt.

Unwissen und Dummheit ist aber auch nicht dasselbe! Jeder hat mal 
unwissend angefangen. Viel Erfolg auch weiterhin!

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
Noch kein Account? Hier anmelden.