C: Feld hat unvollständigen Typ
Ich entschuldige mich, wenn dies wurde vorher gefragt.
Ich erhalte die folgende Fehlermeldung beim kompilieren durch machen:
.../inc/intModIp.h:418: error: field 'cnc_id' has incomplete type
../inc/intModIp.h:419: error: field 'cnc_key' has incomplete type
../inc/intModIp.h:421: error: field 'fin_id' has incomplete type
../inc/intModIp.h:422: error: field 'fin_key' has incomplete type
../inc/intModIp.h:424: error: field 'remote_id' has incomplete type
../inc/intModIp.h:426: error: field 'cnc_ipsec_peer' has incomplete type
../inc/intModIp.h:427: error: field 'fin_ipsec_peer' has incomplete type
../inc/intModIp.h:428: error: field 'remote_ipsec_peer' has incomplete type
../inc/intModIp.h:430: error: field 'cnc_link' has incomplete type
../inc/intModIp.h:431: error: field 'cnc_esp' has incomplete type
../inc/intModIp.h:433: error: field 'fin_link' has incomplete type
../inc/intModIp.h:434: error: field 'fin_esp' has incomplete type
Jeweiligen code in der header-Datei ist wie folgt:
#if 1 || defined(SYMB_IPSEC)
struct ipsec_state {
int enabled;
int active;
int timer;
/* IPSEC_SOCKET_STATES */
struct ipsec_id cnc_id;
struct ipsec_priv_key cnc_key;
struct ipsec_id fin_id;
struct ipsec_priv_key fin_key;
struct ipsec_id remote_id;
struct ipsec_peer cnc_ipsec_peer;
struct ipsec_peer fin_ipsec_peer;
struct ipsec_peer remote_ipsec_peer;
struct ipsec_ike_link cnc_link;
struct ipsec_esp_sa cnc_esp;
struct ipsec_ike_link fin_link;
struct ipsec_esp_sa fin_esp;
} ipsec;
#endif
könnte mir bitte jemand helfen mit diesem.
Bitte lassen Sie mich wissen, wenn eine andere information benötigt wird.
Dank,
Sunny
- Es scheint, dass Sie brauchen, um den Kopf, dass jeder dieser Strukturen.
- Scheint, wie
struct ipsec_id
und anderen erklärt, nachdemstruct ipsec_state
oder nicht erklärt auf alle.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnte das problem sein, dass all diese Strukturen werden erklärt vorwärts.
Ist header enthalten nach
struct ipsec_state
?:/* ein.h */
/* demo.c */
Ausgabe:
Compiler nicht finden können, erklärte struct-Definitionen (
ipsec_id
...ipsec_esp_sa
), müssen Sie möglicherweise zugehörigen header-DateienEiner Quelle des Fehlers (Feld hat unvollständigen Typ) ist bei Verwendung der struct-Schlüsselwort vor ein alias (eine variable definiert, die durch typedef). Versuchen Sie, das struct-Schlüsselwort.
setzen Zeiger für Struktur-member.