Problem bei der Funktion



  • Hall mein Problem ist folgendes das in Zeile 6 die Fehlermeldung kommt : [Warning] passing arg 1 of `fgets' makes pointer from integer without a cast In function `Einlesen_Ausgabe':

    [cpp]void Einlesen_Eingabe(ZE11){
    
                      TE = fgetc (datei);
                       if (TE == 32) {
                              printf ("Mascine 1" ); 
                       fgets(ZE11, E ,datei);
                       }
                       else {
                            printf ("Das Logfile besitzt einen Fehler im Zeile %d  \n" ,CZ);
                           return; 
                            }
         }
    
    void Einlesen_Ausgabe(ZA11)  {                 
                       printf (" a Maschine 1 ");
                       TE = fgetc (datei);
                       if (TE == 32) {
                              if (MB11==1) {
                       fgets( ZA22, MAX ,datei);
                       }
                       else {
                            printf ("Das Logfile besitzt einen Fehler im Zeile %d \n" ,CZ);
                            system ("PAUSE");
                            return ;
                            }
                       }
                       else {
                            printf ("Das Logfile besitzt einen Fehler im Zeile %d \n" ,CZ);
                            system ("PAUSE");
                            return ;
                            } 
    }[/cpp]
    

    Das sind noch die Verknüpfungen aber verstehe nicht wei die eine auf die andere wikren kann.

    [cpp]case 49 : 
                                    Einlesen_Eingabe(ZE11);
                                    nZE1=atoi(ZE11);
                                    nZEn1=nZEn1+nZE1;
                                    MB1 = 1;
                                    printf("Einschaltzeit: %s" ,ZE11);
                                    ZE11[E]=0;
                          break;[/cpp]
    
    [cpp]
    case 49 : MB11 = MB1;
                       Einlesen_Ausgabe(ZA11)
                       nZA1=atoi(ZA11);
                       nZAn1=nZAn1+nZA1;
                       printf ("Laufzeit: %s \n" ,ZA11);
                       C1++ ;
                       MB1=0;
    
                  break;[/cpp]
    

    Die Variable ZE11 Steht doch gar net im zusammenhang mit der Funktio /Einlesen_Ausgabe/ 😕



  • Die Fehlermeldung bezieht sich ja auch auf Einlesen_Eingabe(ZE11), wie es aussieht.

    Du hast vergessen, im Funktionskopf einen Typ für ZE11 anzugeben. Wahrscheinlich wird dann default-int angewendet oder so...



  • es wird 2 mal der datei Zeiger verwendet jedoch bleibt die frage bestehen
    wie kann ich auf ein und die selbe datei verweisen in 2 unterschiedlichen funktionen



  • u schrieb:

    es wird 2 mal der datei Zeiger verwendet jedoch bleibt die frage bestehen
    wie kann ich auf ein und die selbe datei verweisen in 2 unterschiedlichen funktionen

    den zeiger einfach kopieren:

    // 2 Prototypen.
    void functi0n_1( FILE* fp );
    void functi0n_2( FILE* fp );
    
    FILE* fp = fopen( ...
    
    functi0n_1(fp);
    functi0n_2(fp);
    

Anmelden zum Antworten