INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
variable or field declared void
21.02.2020, 17:50
Beitrag #1
variable or field declared void
Ich bekomme bei meinem code folgende Fehlermeldung:

exit status 1
variable or field 'Lauflicht4' declared void

Ich habe auch eine Lösung die funktioniert, die mir aber nicht so richtig gefällt und ich weis auch nicht warum mein erster code nicht funktioniert.

Code:
#include <Adafruit_NeoPixel.h>
#define LED_PIN     6
#define LED_COUNT  60
#define Poti1G A0  // Eingang Poti für Geschwindigkeit
#define Poti2H A1  // Eingang Poti für Helligkeit

Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRBW + NEO_KHZ800);

uint32_t rot   = strip.Color(255,   0,   0);
uint32_t gruen = strip.Color(  0, 255,   0);
uint32_t blau  = strip.Color(  0,   0, 255);
uint32_t gelb  = strip.Color(255, 255,   0);
uint32_t weiss = strip.Color(255, 255, 255);

uint32_t Color1;
uint32_t Color2;
uint32_t Color3;
uint32_t Color4;
uint32_t Color5;
uint32_t Color6;

int Farbenzahl;
int Geschwindigkeit;
int Helligkeit = 50;

void setup() {
  strip.begin();
  strip.show();
  strip.setBrightness(Helligkeit);
}

void loop() {
  Geschwindigkeit = analogRead(Poti1G);
  Helligkeit = analogRead(Poti2H) / 4;
  strip.setBrightness(Helligkeit);
  Lauflicht4(7, rot, gruen, blau, gelb);
}


void Lauflicht4(Farbenzahl, Color1,  Color2, Color3, Color4){
}

Die Lösung welche mir nicht gefällt weil ich meine Variablen gerne alle am Anfang definieren möchte und bei dieser Lösung die void Zeile etwas lang und unübersichtlich wird.

Code:
#include <Adafruit_NeoPixel.h>
#define LED_PIN     6
#define LED_COUNT  60
#define Poti1G A0  // Eingang Poti für Geschwindigkeit
#define Poti2H A1  // Eingang Poti für Helligkeit

Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRBW + NEO_KHZ800);

uint32_t rot   = strip.Color(255,   0,   0);
uint32_t gruen = strip.Color(  0, 255,   0);
uint32_t blau  = strip.Color(  0,   0, 255);
uint32_t gelb  = strip.Color(255, 255,   0);
uint32_t weiss = strip.Color(255, 255, 255);

int Geschwindigkeit;
int Helligkeit = 50;

void setup() {
  strip.begin();
  strip.show();
  strip.setBrightness(Helligkeit);
}

void loop() {
  Geschwindigkeit = analogRead(Poti1G);
  Helligkeit = analogRead(Poti2H) / 4;
  strip.setBrightness(Helligkeit);
  Lauflicht4(7, rot, gruen, blau, gelb);
}

void Lauflicht4(int Farbenzahl, uint32_t Color1, uint32_t Color2, uint32_t Color3,uint32_t Color4){
}

Warum funktioniert die erste Lösung nicht und wie bekomme ich es hin meine Variablen am Anfang zu definieren?

Harry

Wenn etwas nicht funktioniert -> Kondensator hinzufügenSmile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 17:56
Beitrag #2
RE: variable or field declared void
Es wäre besser, wenn Du die Komplette Fehlermeldung mit Zeilennummer und Fehleranzeige postest.

Für was sollen die globale Variable Farbenzahl, sowie die Color1 bis 6 gut sein?

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 18:07 (Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2020 18:09 von Harry.)
Beitrag #3
RE: variable or field declared void
(21.02.2020 17:56)Tommy56 schrieb:  Es wäre besser, wenn Du die Komplette Fehlermeldung mit Zeilennummer und Fehleranzeige postest.

Code:
Lauflicht_neu_01:47:17: error: variable or field 'Lauflicht4' declared void

void Lauflicht4(Farbenzahl, Color1,  Color2, Color3, Color4){

                 ^~~~~~~~~~

Mehrere Bibliotheken wurden für "Adafruit_NeoPixel.h" gefunden
Benutzt: C:\Arduino\LED
exit status 1
variable or field 'Lauflicht4' declared void

Das neue Programm steht erst am Anfang.

(21.02.2020 17:56)Tommy56 schrieb:  Für was sollen die globale Variable Farbenzahl, sowie die Color1 bis 6 gut sein?

Das ganze soll ein Lauflicht mit verschiede Optionen werden.
Farbzahl = Zahl der LEDs in der gleichen Farbe hintereinander.
Color1-6 = Die Farben welche wieder gegeben werden.

Lauflicht4(7, rot, gruen, blau, gelb) steht für

Lauflicht4 = Lauflicht mit 4 verschiedene Farben (Die Farbanzahl soll später noch mit übergeben werden)

rot, gruen, blau, gelb = die Reihenfolge der Farben.

Harry

Wenn etwas nicht funktioniert -> Kondensator hinzufügenSmile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 18:20
Beitrag #4
RE: variable or field declared void
Dein Funktionskopf ist falsch. Du musst zu den funktionslokalen Variablen auch deren Typ zur Übergabe angeben.
Die Fehlermeldung passt nicht zum Fehler.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 18:33 (Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2020 18:37 von MicroBahner.)
Beitrag #5
RE: variable or field declared void
Was soll dein 'Lauflicht4' denn eigentlich sein? Da kommt der Compiler nämlich auch nicht klar und versteht nicht was das soll. Deshalb auch die unklare Fehlermeldung.

In der 2. Variante ist das die Definition einer leeren Funktion. Ziemlich sinnfrei, aber für den Compiler symtaktisch ok.

Also erkläre erstmal, was Du da mit dem 'Lauflicht4' machen willst.

Gruß, Franz-Peter
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 18:36 (Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2020 18:37 von MicroBahner.)
Beitrag #6
RE: variable or field declared void
Wenn es tatsächlich eine Funktion werden soll MUSST Du die Funktionsparameter dort deklarieren, und auch den Typ der jeweiligen Parameter angeben.
Grundlagen -> Funktionsdefinitionen.
Dann musst Du die Funktion aber auch mit Leben füllen - sonst passiert da nichts.

Gruß, Franz-Peter
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 18:38
Beitrag #7
RE: variable or field declared void
Kannst du mir bitte erklären was du damit meinst?
Welcher Teil ist der Funktionskopf?
Den Typ habe ich doch ganz am Anfang angegeben.
Code:
uint32_t Color1;
uint32_t Color2;
uint32_t Color3;
uint32_t Color4;
uint32_t Color5;
uint32_t Color6;
int Farbenzahl;

(21.02.2020 18:20)Tommy56 schrieb:  Dein Funktionskopf ist falsch. Du musst zu den funktionslokalen Variablen auch deren Typ zur Übergabe angeben.
Die Fehlermeldung passt nicht zum Fehler.

Das müsste jetzt alles ein:

Code:
Arduino: 1.8.10 (Windows 7), Board: "Arduino Nano, ATmega328P (Old Bootloader)"

Lauflicht_neu_01:46:17: error: variable or field 'Lauflicht4' declared void

void Lauflicht4(Farbenzahl, Color1,  Color2, Color3, Color4){

                 ^~~~~~~~~~

C:\Users\Test\AppData\Local\Temp\arduino_modified_sketch_317744\Lauflicht_neu_01​.ino: In function 'void loop()':

Lauflicht_neu_01:42:3: error: 'Lauflicht4' was not declared in this scope

   Lauflicht4(7, rot, gruen, blau, gelb);   // LEDs in gleicher Farbe, Farben,

   ^~~~~~~~~~

C:\Users\Test\AppData\Local\Temp\arduino_modified_sketch_317744\Lauflicht_neu_01​.ino: At global scope:

Lauflicht_neu_01:46:17: error: variable or field 'Lauflicht4' declared void

void Lauflicht4(Farbenzahl, Color1,  Color2, Color3, Color4){

                 ^~~~~~~~~~

Mehrere Bibliotheken wurden für "Adafruit_NeoPixel.h" gefunden
Benutzt: C:\Arduino\LED
exit status 1
variable or field 'Lauflicht4' declared void

Harry

Wenn etwas nicht funktioniert -> Kondensator hinzufügenSmile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 18:49 (Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2020 18:50 von Tommy56.)
Beitrag #8
RE: variable or field declared void
Warum lernst Du nicht endlich ein paar Grundlagen? Bald gibt es auf solche Fragen nach 269 Beiträgen keine Antworten mehr, wenn Du nicht selbst Lernwillen zeigst.

Code:
void Lauflicht4(byte Farbenzahl, uint32_t Color1,  uint32_t Color2, uint32_t Color3, uint32_t Color4){

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Fehlermeldung expected unqualified-id before void Celestron 26 1.321 28.06.2020 18:19
Letzter Beitrag: Tommy56
  loop inerhalb von void loop () FoxFactoy 11 988 28.06.2020 10:04
Letzter Beitrag: Tommy56
  HC-12 verschiede Variable übertragen Harry 33 9.116 21.06.2020 20:09
Letzter Beitrag: Tommy56
Photo SIM800l Variable Telefonnummer zuweisen huber5093 18 1.110 15.06.2020 23:07
Letzter Beitrag: georg01
  Variable mit Werten von SD-Karte füllen DO3GE 16 1.393 14.04.2020 19:38
Letzter Beitrag: Corvus
  Frage zu "void" Lampe 7 707 14.04.2020 18:06
Letzter Beitrag: Lampe
  Merkwürdiges Verhalten einer globalen Variable Anders_Hamburg 6 651 29.03.2020 10:46
Letzter Beitrag: Fips
  8 Bit als Variable Parallel einlesen Holzauge 4 1.337 24.03.2020 20:18
Letzter Beitrag: Holzauge
  int variable wird nicht in Schleife übertragen ha0248 8 1.097 11.02.2020 15:25
Letzter Beitrag: ha0248
  Anführungszeichen mit Variable dazwischen Stagneth.Alexander 4 1.038 27.10.2019 09:57
Letzter Beitrag: Stagneth.Alexander

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste