Variable Prüfen Suche Hilfe

Hallo Zusammen,

Ich habe Folgenden Teilcode:

      if (gotByte == 105) {
        printf("Login\n\r");
        int user = 100;
        if (user == user1) {
          printf("Eingelogt\n\r");
          lcd.setCursor(0, 2);
          lcd.print("  User1 Eingeloggt  ");
        }
      }
      if (user == user1) {
        printf("Funktioniert\n\r");
      }

Die anzeige Login und Eingelogt erscheinen im Serial Monitor, jedoch die Anzeige Funktioniert erscheint nie.
Hab ich da was Falsch gemacht?

Die Variablen sind wie Folgt deklariert:

int user;
int user1;
int user2;
void loop(void) {

  int user1 = 100;
  int user2 = 200;

Nun ist die Frage, warum der Text Funktioniert nicht ausgegeben wird :s

Und mehrmals deklariert. Einmal global und einmal lokal. Das nennt sich Verdeckung:
http://de.wikibooks.org/wiki/C-Programmierung:_Funktionen#Verdeckung

Aha, wiedereinmal etwas wichtiges hinzugekommen :slight_smile:
Danke :slight_smile:

Eine Sache zu der Seite die ich verlinkt habe. Da steht:

ein Zugriff auf die globale Variable [ist] im Wirkungsbereich der lokalen Variable nicht möglich

Diese Seite ist für C geschrieben und da stimmt das. In C++ kann man allerdings auf die globale Variable mit dem Scope Resolution Operator :: zugreifen.