|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: May 2010
Messaggi: 8
|
[C] lettura dinamica
Ciao a tutti, ho un problema.
Come posso leggere da input un certo numero di interi, non specificato, e memorizzare tali valori in un array? Ad esempio, la riga da leggere è: 2 3 4 5 (termina con invio) Dovrei memorizzare i 4 numeri in un array, ma non so a priori quanti numeri verranno scritti. Grazie per l'aiuto! |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2009
Città: Varès
Messaggi: 658
|
usando puntatori e malloc invece che array di cui dichiari già la dimensione
|
|
|
|
|
|
#3 |
|
Junior Member
Iscritto dal: May 2010
Messaggi: 8
|
Ho provato a scrivere questa funzione, ma non dà risultati corretti, qualcuno può aiutarmi?
Codice:
int * lettura(int *ident){
char c;
int n = 0;
while((c=getchar())!= '\n'){
while(!isspace(c));
n++;
ident = realloc(ident, n*sizeof(int));
ident[n-1] = c;
printf("%d\n", ident[n-1]);
}
return(ident);
};
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Mar 2009
Messaggi: 753
|
ok, ma puoi indentare meglio il codice? Altrimenti è difficile aiutarti e avrai meno risposte...
cmq per iniziare io inserirei un controllo per il valore di ritorno di realloc() |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Nov 2004
Città: Roma
Messaggi: 440
|
Quote:
Codice HTML:
int leggiArray() {
int x[]; // il tuo array
int i; // indice
int n; // il numero di elementi del array
printf("Numero di elementi: ");
scanf("%d", &n);
printf("Inserisci %d numeri: ");
for (i=0; i<n; i++) {
scanf("%d", &x[i]);
}
return(n);
}
__________________
Ho fatto affari con: Dasutera77,Fran123,Zibaldone, blade1983, cianuro, nemoRS, DDA, Dexter, Dax86+,... |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:38.




















