|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jan 2010
Città: (MB)
Messaggi: 11971
|
[C] passare in line command un numero di argomenti non noto
Salve, in pratica devo fare un programmino stupido che mi permetta di concatenare il contenuto dei file e metterlo nell'output. Ora, se il numero degli argomenti è noto a priori, no problem, riesco facilmente, ma se non lo è?? come faccio a passare argomenti di numero variabile, esempio una volta passo 3 arg, una volta 5 arg, una volta 2 arg ecc...
grazie
__________________
CPU: Ryzen 3700x DISSY: CM HYPER EVO 212 RAM: 16gb DDR4 3000Mhz MOBO: MSI b350 tomahawk VGA: MSI Ventus 2X 4060TI 16GB ALI: Cooler Master V550 SSD: Samsung 970 Evo Plus Trattive+:(a) topolino2808(x2), galfum, giap959, sm_morgan, Biduzzo, huangwei, maxmax80, bubbi, dinamite2, PaxNoctis;(v) rubrie, CubeDs, Slater91, Juvanni, FireFox152, gluvocio, giulio81, emahwupgrade, Velvet, semmy83, giocher03 |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2004
Messaggi: 1945
|
Glie li passi e basta dato che il il main ha due parametri
Codice:
int main(int argn , char ** argp) |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Jan 2010
Città: (MB)
Messaggi: 11971
|
io lo scrivo così :
Codice:
int main(int argc, char **argv) ad esempio: ad argv[1]="ciao.txt" ad argv[2]="ciao1.txt" ecc... capito? in pratica quei parametri che devo passare sono dei file, e il numero non è noto a priori, questo causa il fatto che non posso assegnare il puntatore a ciascun argomento..... ![]()
__________________
CPU: Ryzen 3700x DISSY: CM HYPER EVO 212 RAM: 16gb DDR4 3000Mhz MOBO: MSI b350 tomahawk VGA: MSI Ventus 2X 4060TI 16GB ALI: Cooler Master V550 SSD: Samsung 970 Evo Plus Trattive+:(a) topolino2808(x2), galfum, giap959, sm_morgan, Biduzzo, huangwei, maxmax80, bubbi, dinamite2, PaxNoctis;(v) rubrie, CubeDs, Slater91, Juvanni, FireFox152, gluvocio, giulio81, emahwupgrade, Velvet, semmy83, giocher03 |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
Mmm e quale sarebbe il problema? Tu passi tutti i tuoi nomi di file al programma. Argc-1 ti dice quanti parametri hai e
for (i=1; i<argc; i++) printf("Nome file: %s", argv[i]); Perchè dovresti essere tu ad assegnare i valori all'array argv? E' il contrario. |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Jan 2010
Città: (MB)
Messaggi: 11971
|
Quote:
per esempio una volta concateno due file, una volta cinque, una volta dieci, il programma deve essere sempre in grado di concatenare, indipendentemente dal numero di file.ù p.s : risolto, si era una cavolata avevi ragione. ti ringrazio al prossimo
__________________
CPU: Ryzen 3700x DISSY: CM HYPER EVO 212 RAM: 16gb DDR4 3000Mhz MOBO: MSI b350 tomahawk VGA: MSI Ventus 2X 4060TI 16GB ALI: Cooler Master V550 SSD: Samsung 970 Evo Plus Trattive+:(a) topolino2808(x2), galfum, giap959, sm_morgan, Biduzzo, huangwei, maxmax80, bubbi, dinamite2, PaxNoctis;(v) rubrie, CubeDs, Slater91, Juvanni, FireFox152, gluvocio, giulio81, emahwupgrade, Velvet, semmy83, giocher03 Ultima modifica di tecno789 : 07-02-2012 alle 19:26. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:39.