|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Dec 2003
Messaggi: 1753
|
[C] Errori di compilazione
Situazione 1:
... BOOL LeggiDaFile(char *, request_msg); //dichiarazione prototipo ... LeggiDaFile("input.txt", messaggio); // chiamata alla funzione ... BOOL LeggiDaFile(char *input, request_msg messaggio) { //intestazione funzione ... error C2081: 'request_msg' : name in formal parameter list illegal //riferito al prototipo error C2115: 'function' : incompatible types // riferito alla chiamata alla funzione warning C4024: 'LeggiDaFile' : different types for formal and actual parameter 2 // riferito alla chiamata alla funzione warning C4028: formal parameter 2 different from declaration //riferito all'intestazione della funzione Situazione 2: ... BOOL LeggiDaFile(request_msg, char *); //dichiarazione prototipo ... LeggiDaFile(messaggio, "input.txt") // chiamata alla funzione ... BOOL LeggiDaFile(request_msg messaggio, char *input) { //intestazione funzione ... error C2122: 'char *' : prototype parameter in name list illegal //riferito al prototipo Le due situazioni differiscono solo nell'ordine in cui sono scritti i parametri, request_msg è un tipo di dato strutturato che ho definito io. Perché solo cambiando l'ordine dei parametri ho errori in compilazione diversi? Come devo interpretare questi errori? Perché se passo solo char * o alternativamente request_msg viene compilato (anche se il prog non funziona perché ho bisogno di entrambi i dati per quella funzione), mentre se li passo entrambi no? |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Prova con
struct request_msg |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:54.