Funzione while

di il
5 risposte

Funzione while

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char*argv[])
{
    int  m, n, o;
    FILE *fp;
    fp=fopen(argv[0], "r");
    o=0;
    
    if(argc!=2){
        printf("errore");
        return -1;
    }
    
    if(fp==NULL){
        printf("errore");
        return -2;
    }
    
   while(fscanf(fp, "%d %d", &m, &n)!=EOF){
            o= m+n;
   }
   
    printf("o= %d\n", o);
    return 0;
}
buongiorno a tutti, qualcuno sa dirmi perchè non funziona questo programma? premetto che il file è scritto nel formato corretto e non ci sono errori nella linea di comando, presumo dunque di aver sbagliato qualcosa nel while ma proprio non riesco a capire cosa

5 Risposte

  • Re: Funzione while

    Non funziona cosa vuol dire?

    Non compila, va in errore, non fa quello che deve?
    E cosa dovrebbe fare?

    Lo sai vero che dovresti controllare se hai argomenti 'prima' di usarli?

    E forse a dare una seconda occhiata alla documentazione si capisce 'quali' sono gli argomenti passati


    E proposito, tu che argomenti passi?
  • Re: Funzione while

    Ho trovato l'errore, ho aperto il file in argv[0] trovando il nome del programma perchè il file si trova in argv[1], tutto il resto era corretto ma non mi dava l'errore -1 da me impostato per i problemi in linea di comando
  • Re: Funzione while

    E perché te lo dovrebbe dare?
  • Re: Funzione while

    Nella mia ignoranza pensavo che facendo una fopen su un nome di un programma e non su un file mi desse come responso un errore in lettura
  • Re: Funzione while

    Ma tu hai scritto

    non mi dava l'errore -1 da me impostato per i problemi in linea di comando

    Quando restituisci il valore -1 nel codice?
Devi accedere o registrarti per scrivere nel forum
5 risposte