Anzeige:
Ergebnis 1 bis 3 von 3

Thema: [c/c++] fscanf speicherzugriffsfehler

  1. #1
    Registrierter Benutzer
    Registriert seit
    07.09.2004
    Beiträge
    26

    [c/c++] fscanf speicherzugriffsfehler

    Hallo leute !
    ich habe eine Funktion zum parsen einer datei.txt geschrieben
    die datei.txt sieht so aus.
    104
    -3 -2 650 1
    1397 -1.5 649 1
    1399 548.5 650 1
    -2 548 650 1
    die funktion ist :
    Code:
     FILE *fd;
      int i;
      int tmp;//wird eignetlich nicht gebraucht.
      //datei öffnen!!!!
       if ((fd = fopen(dateiname, "r")) == NULL) return(false);
    
      //Anzahl der einzulesene Punkten einlesen
      if (fscanf(fd, "%d\n", &(modell->anzahl_szenenecken)) != 1) {
        printf("*** Fehler: Werkstueckmodell Einlesen Anzahl Szenenecken\n");
        fclose(fd);
        return(false);
      }//end if  (fscanf(fd, "%d\n", &(modell->anzahl_szenenecken)) != 1)
      printf("*** Anzahl: %d:",modell->anzahl_szenenecken);
      //überprüfen ob die Zahl, die Bedingungen erfüllt
      if ((modell->anzahl_szenenecken < 0) ||
          (modell->anzahl_szenenecken > MAX_ANZ_MODELLECKEN)) {
        printf(
          "*** Fehler: Werkstueckmodell Anzahl Szenenecken zu gross (%d > %d)\n",
          modell->anzahl_szenenecken, MAX_ANZ_MODELLECKEN);
        fclose(fd);
        return(false);
      }//end if ((modell->anzahl_szenenecken < 0) ||
    
      for (i=0; i<modell->anzahl_szenenecken; i++) {
    ///
       if (fscanf(fd, "%lf %lf %lf %d\n", &(modell->szenenecken[i].x),
                   &(modell->szenenecken[i].y),&(modell->szenenecken[i].z),
                   tmp) != 4) {
          printf("*** Fehler: Werkstueckmodell Einlesen Szenenecke %d\n", i);
          fclose(fd);
          return(true);
        }
    
       
      } /* for */
    in der fett geschriebenen Schleife stimmt irgendwas nicht

    Der Code wird fehlerfrei compiliert, beim Ausführen bekomme ich diese Fehlermeldung:
    Speicherzugriffsfehler

    Kann mir jemand weiter helfen....
    danke im Voraus..

  2. #2
    Registrierter Benutzer
    Registriert seit
    24.06.2003
    Beiträge
    486
    Bei der fscanf Übergabe fehlt bei tmp der &.

  3. #3
    Registrierter Benutzer
    Registriert seit
    07.09.2004
    Beiträge
    26
    ich habe es selbst rausgefunden....

    aber trotzdem danke....

    mfg

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •