PDA

Visualizza la versione completa : [C] argc e argv non mi funzionano


wino_7
27-03-2008, 20:36
Ho scritto questo prog ma quando lancio il programma non riesco a pasare da linea di comando i paramentri alla funzione main, cioč appena digito un tasto la finestra di dos mi si chiude.



#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
int i;

for (i = 1; i < argc; i++)
{
printf("%s%s", argv[i], (i < argc-1) ? " " : "");
}

printf("\n");

system("PAUSE");
return 0;
}


Dove č il problema????

oregon
27-03-2008, 20:51
Se lo esegui da una finestra DOS, devi scrivere i parametri dopo il nome dell'eseguibile.

Se lo esegui dall'IDE (quale?) devi indicare i parametri della linea di comando nell'apposito menu ...

wino_7
27-03-2008, 20:57
Lo compilo ed eseguo da dev-c++ e quando si apre la finestra del dos appena digito si chiude.
Di quale menů parli?

oregon
27-03-2008, 20:58
Execute -> Parameters

wino_7
27-03-2008, 21:03
ok funziona grazie tanto, ma se voglio passarli dal dos cosa devo scrivere?
e poi il numero di argc viene calcolato in base al numero di parametri oppure glielo devo passare io?

oregon
27-03-2008, 21:06
Allora devi eseguire il programma in una finestra DOS. Apri una finestra DOS da

Avvio -> Esegui ... Cmd

e vai nella cartella dove c'e' l'eseguibile. A questo punto lo esegui digitando il nome seguito dai parametri.

In argc hai automaticamente il numero.

wino_7
27-03-2008, 21:09
Grazie oregon ultimamente mi hai risolto vari problemi

oregon
27-03-2008, 21:10
Di nulla ... sono cose banali ma sembrano insormontabili all'inizio ...

Loading