2011-05-05 2 views
0

Obtention d'erreurs lors de la déclaration de cette structure dans l'objectif c.Structure dans l'objectif c

struct stRs232Struct* pStruct; 
pStruct->nMessageId = (int)uMessageId; 

Erreur: pointeur type incomplet Déréférencer

Répondre

1

Qu'est-ce stRs232Struct? Est-ce votre propre structure? Si oui alors vous devriez le déclarer quelque part. Quelque chose comme ceci:

struct stRs232Struct { 
    int nMessageId; 
}; 
... 
struct stRs232Struct* pStruct; 
pStruct->nMessageId = (int)uMessageId; 
... 

Si vous avez déjà déclaré, alors vous devriez vérifier si le fichier .h-correspondant à sa définition est incluse avant l'utilisation.

+0

J'ai inclus le fichier d'en-tête. – spandana

+0

@ron: Et qu'en est-il de la déclaration de structure? L'avez-vous déclaré? –

2

Le compilateur vous avertit qu'il sait qu'il existe un type, mais il ne sait pas à quoi ressemble ce type. Vous avez probablement une déclaration avant (struct stRs232Struct;) quelque part mais vous n'avez pas inclus la définition complète (struct stRs232Struct { ... };).