| 
 | |||||||
| 
 | 
|  | 
|  | 
|  | Strumenti | 
|  10-09-2011, 19:52 | #1 | 
| Member Iscritto dal: Sep 2007 
					Messaggi: 59
				 | 
				
				[C] invalid type argument of ‘->’
			 
		Salve a tutti,  sono un grande newbie per quel che riguarda C e vi volevo chiedere il perchè mi da il seguente errore: invalid type argument of ‘->’ (have ‘Hand’) quando faccio qualcosa del tipo: int min1=m1->mano[0]->numero; Dove si ha: Codice: enum seme{
	Cuori,
	Quadri,
	Fiori,
	Picche
};
typedef enum seme Seme;
struct card{
	int numero; // 1-13
	 Seme seme;
};
typedef struct card Card;
struct mano{
	Card mano[5];
};
typedef struct mano Hand;Son sicuro che è prorpio una mia mancanza a livello teorico, grazie a tutti per le eventuali risposte   | 
|   |   | 
|  10-09-2011, 20:05 | #2 | |
| Senior Member Iscritto dal: Oct 2006 Città: milano 
					Messaggi: 1439
				 | Quote: 
 Codice: int min1 = m1.mano[0].numero; | |
|   |   | 
|  10-09-2011, 20:08 | #3 | 
| Member Iscritto dal: Sep 2007 
					Messaggi: 59
				 | 
		
Così sembra andare, qual'è la differenza fra l'operatore '->' e l'operatore '.' ? Cioè perchè in questo caso -> non va, mentre . sì ?  Grazie anche per la risp di sopra  Penso di averlo capito da me, in pratica se opero con puntatori a strutture uso ->, se opero direttamente su di una struttura devo usare '.', giusto ? Ultima modifica di cifa : 10-09-2011 alle 20:12. | 
|   |   | 
|  10-09-2011, 20:18 | #4 | |
| Senior Member Iscritto dal: May 2006 Città: Salerno 
					Messaggi: 936
				 | Quote: 
 Più formalmente, Codice: pStruttura->elemento; Codice: (*pStruttura).elemento; Questo, ovviamente, se hai a che fare con un puntatore a struttura. Se hai già la struttura, tipo: Codice: struct MiaStruttura {
    int elemento;
    //...
};
MiaStruttura str;Codice: str.elemento; | |
|   |   | 
|   | 
| Strumenti | |
| 
 | 
 | 
Tutti gli orari sono GMT +1. Ora sono le: 06:42.









 
		 
		 
		 
		








 
  
 



 
                        
                        










