PDA

View Full Version : Aiutino in C


beppegrillo
09-11-2004, 20:58
#include <iostream>
#include <stdlib.h>

using namespace std;

int main(int argc, char *argv[])
{
printf("prova %c \n", *argv[1]);
system("PAUSE");
return 0;
}


Se lancio l'eseguibile con il paramentro 12331, ottengo in outuput solo 1 mentre io vorrei riceverne tutto il paramentro, ho provato ad utilizzare anche %s al posto di %c, ma non ha dato alcun esito.
Consigli?
:)

Maverick82^
09-11-2004, 23:08
Originariamente inviato da beppegrillo
#include <iostream>
#include <stdlib.h>

using namespace std;

int main(int argc, char *argv[])
{
printf("prova %c \n", *argv[1]);
system("PAUSE");
return 0;
}


Se lancio l'eseguibile con il paramentro 12331, ottengo in outuput solo 1 mentre io vorrei riceverne tutto il paramentro, ho provato ad utilizzare anche %s al posto di %c, ma non ha dato alcun esito.
Consigli?
:)

printf("prova %s \n", argv[1]);

VegetaSSJ5
09-11-2004, 23:11
cos'è quell' "using namespace std"?? non l'ho mai sentito nominare in c

RaouL_BennetH
09-11-2004, 23:37
Originariamente inviato da VegetaSSJ5
cos'è quell' "using namespace std"?? non l'ho mai sentito nominare in c

ma è una funzione del C++ infatti, come anche l'include <iostream> se non erro.

beppegrillo
10-11-2004, 09:00
Si c'erano le due fuznioni del c++ scusate, ora il sorgente è questo;
#include <stdio.h>
#include <stdlib.h>


int main(int argc, char *argv[])
{
printf("prova %s \n", *argv[1]);
system("PAUSE");
return 0;
}

Ma addirittura dopo aver compilato con successo ottengo un errore di esecuzione da parte di windows?!:confused:

cionci
10-11-2004, 09:01
Togli * da argv[1]...

beppegrillo
10-11-2004, 09:04
Originariamente inviato da cionci
Togli * da argv[1]...
Si era quello cionci :)
Ma per accedere al contenuto di un puntatore non si utilizzava il * e & per l'indirizzo?:confused:

cionci
10-11-2004, 09:15
Si...ma *argv[] è un vettore di puntatori...
Ogni puntatore poi punta al primo elemento di ogni stringa...

Quindi quando fai argv[k] accedi al puntatore al primo elemento della k-esima stringa... Le operazioni sulle stringhe si fanno specificando il puntatore al primo elemento della stringa (la fine è determinata dal carattere '\0'...