Funzione main con input da linea di comando

di il
7 risposte

Funzione main con input da linea di comando

Salve a tutti, dovrei fare un esercizio in cui se come input non metto nulla mi stampa tutti i file di un file.db e se metto altre cose mi stampa altre determinate cose, il problema è che non capisco come fare so che argc è il numero degli elementi digitati e che argv è un array di stringhe contenenti ciascuna un elemento, non voglio che qualcuno di voi mi faccia il programma ma che mi riusciate a far capire bene questo argomento grazie mille

7 Risposte

  • Re: Funzione main con input da linea di comando

    Prova a scrivere un esempio di codice che visualizza il valore di argc.
  • Re: Funzione main con input da linea di comando

    Non c'è niente da capire
    Per esercitarti posso suggerirti di scrivere un semplice programmino che stampa a video il numero di argomenti (argc) e ciascuno di questi argomenti (argv). (...e ti do anche un suggerimento )
  • Re: Funzione main con input da linea di comando

    Cosi mi stampa il valore che immetto
    #include <stdio.h>
    
    int main(int argc, char *argv)
    {
          printf("\n%d\n", argc);
      
      return 0;
    }
  • Re: Funzione main con input da linea di comando

    Ma se io metto ./esercizio A e poi faccio se argv è uguale ad A fai questo funziona? non lo devo considera come un array vero è proprio che devo scorrere i file giusto?
  • Re: Funzione main con input da linea di comando

    Non devi scrivere
    int main(int argc, char *argv)
    ma bensì
    int main(int argc, char *argv[])
    Hai letto il link che ti avevo dato? Li ci sono tutte le spiegazioni...
  • Re: Funzione main con input da linea di comando

    candaluar ha scritto:


    Non devi scrivere
    int main(int argc, char *argv)
    ma bensì
    int main(int argc, char *argv[])
    Hai letto il link che ti avevo dato? Li ci sono tutte le spiegazioni...
    si ora l'ho letto e credo di aver capito grazie mille
  • Re: Funzione main con input da linea di comando

    Argv è un'array di stringhe contenente gli argomenti passati da riga di comando,argc è il numero di argomenti passati contando anche il nome dell'eseguibile stesso.
    Essendo argv un array di stringhe,devi scrivere cosi il main:
    
    #include <stdio.h>
    #include <stdlib.h>
    
    int main(int argc,char **argv)/*anche char *argv[]*/
    {
          .........
        return EXIT_SUCCESS;//non 0 per motivi di portabilità
    }
    
    Mi ha anticipato@calanduar.
Devi accedere o registrarti per scrivere nel forum
7 risposte