| 
 | |||||||
| 
 | 
|  | 
|  | 
|  | Strumenti | 
|  14-03-2005, 18:55 | #1 | 
| Senior Member Iscritto dal: Nov 2000 Città: Milano 
					Messaggi: 210
				 | 
				
				[C] CONVERTIRE STRINGA
			 
		Salve a tutti! Ho la seguente struttura: Codice: typedef struct {
 char nome[LNOME+1];
 char cognome[LCOGN+1];
 char citta[LCITT+1];
 char telefono[LTELE+1];
 char commento[LCOMM+1];
} voce;COGNOME NOME CITTA' TELEFONO COMMENTO In cui tutte le righe hanno lunghezza fissa a 140 caratteri. Mi si chiede anche che la funzione allochi la struttura e ritorni il puntatore alla struttura allocata se tutto e' andato bene e NULL altrimenti. In poche parole non saprei fare niente, sono onesto. Come faccio a prendere i vari campi e memorizzarli nei corrispettivi campi della struttura??? VI CHIEDO IL FAVORE DI AIUTARMI, GRAZIE!!! | 
|   |   | 
|  14-03-2005, 19:33 | #2 | 
| Senior Member Iscritto dal: Jun 2002 Città: Dublin 
					Messaggi: 5989
				 | 
		Riservati la memoria con: Codice: nuovavoce = (voce *) malloc(memoriachetiserve); Per le altre, basterà fare: Codice: strncpy(nuovavoce->nome, stringadacuicopiare, 140); strncpy(nuovavoce->cognome, (stringadacuicopiare+140), 140); strncpy(nuovavoce->citta, (stringadacuicopiare+280), 140); etc. etc. etc. 
				__________________ C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! | 
|   |   | 
|  14-03-2005, 19:40 | #3 | 
| Member Iscritto dal: Mar 2005 
					Messaggi: 41
				 | 
		A cosa servono il +140 e +280?
		 | 
|   |   | 
|  14-03-2005, 19:52 | #4 | 
| Senior Member Iscritto dal: Jun 2002 Città: Dublin 
					Messaggi: 5989
				 | 
		Servono a spostarsi all'interno della memoria puntata da "stringadacuicopiare" (che è un char *, quindi pur sempre un puntatore) e quindi a saltare le stringhe già lette (che da quanto detto sono grandi 140 byte). A proposito, trunks81: nella dichiarazione di "prova" ci va "char *" e non "char []", altrimenti il compilatore potrebbe darti rogne. 
				__________________ C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! | 
|   |   | 
|   | 
| Strumenti | |
| 
 | 
 | 
Tutti gli orari sono GMT +1. Ora sono le: 10:12.









 
		 
		 
		 
		







 
  
 



 
                        
                        










