Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

C : dereferencing pointer to incomplete type

tafiscobar, le vendredi 12 décembre 2003 à 20:33:23
salut tlm, j'espere q quelqu'un pourra trouver mon bonheur:
en fait voila j' ecris le bout de code et apres j'expliq :
[code]
////boat.h//////
typedef struct boat *boat;
//boat.c///////
struct boat {
int ymin, ymax;
int xmin, xmax;
int position;
};

///area.h//////////
#include "boat.h"
//et le reste

////area.c////////
int storeInArea (boat bt, area a) {
/*ligne 22*/if (bt->xmax - bt->xmin > 1 && bt->ymax - bt->ymin > 1)
[tab] return ERROR;
///et le reste
}
[/code]

et pouf a la ligne 22 il me dit :" dereferencing pointer to incomplete type" et je ne comprends pas.
si quelqu'un peut m'aider (une nouvelle fois) je lui en serai reconnaissant.

tafiscobar "lou waye def bopame"
la nullite n'existe pas, l'ignorance oui, ah je suppose!!!
Répondre à tafiscobar  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
c-man, le vendredi 12 décembre 2003 à 21:41:02
Salut,
A ta place, j'écrirais plutôt :

////boat.h//////
typedef struct boat *pboat;
//boat.c///////
struct boat {
int ymin, ymax;
int xmin, xmax;
int position;
};

///area.h//////////
#include "boat.h"
//et le reste

////area.c////////
int storeInArea (pboat bt, area a) {
/*ligne 22*/if (bt->xmax - bt->xmin > 1 && bt->ymax - bt->ymin > 1)
[tab] return ERROR;
///et le reste
}
[/code]

Ca devrait mieux marcher.

Car, tu donnes le même nom à la structure boat et au type défini comme étant un pointeur sur cette même structure. Ca fait pas bon ménage !

A+
Répondre à c-man

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
c-man, le vendredi 12 décembre 2003 à 21:47:01
D'ailleurs, il vaudrait mieux mettre le struct boat et le typedef dans le même fichier boat.h.
Ensuite, N'oublie pas d'inclure ce fichier dans area.c (soit directement en incluant boat.h, soit en l'incluant dans area.h mais en n'oubliant pas d'inclure area.h dans area.c).
Re-A+
Répondre à c-man

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
tafiscobar, le vendredi 12 décembre 2003 à 22:15:14
salut, merci , mais cela ne doit pas etre le bleme, car en C ansi la declaration d'un type structure se fait avec "struct <typestructure> <nomvar>" et ce n'est pas la premiere fois q je le fais.
Et pourtant le meme dereferencement marche ds boat.c ( createBoat (boat bt)) .
Ds ts les cas merci. (j'ai oublie de preciser, je suis sous linux).

tafiscobar "lou waye def bopame"
la nullite n'existe pas, l'ignorance oui, ah je suppose!!!
Répondre à tafiscobar

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 nabelou1, le lundi 31 décembre 2007 à 00:55:31
bonjour
je vous demande de bien vouloir me donner un coup de main.
j'ai moi aussi un ce pbleme de dereferencing pointer to incomplet type.
en fait je lit dans un fichier les 2 premiers champs d'une variable de type struct qui correspond a un maillon d'une lisye chainée
voici le code
void extraction() /*extraction de données a partir d'un fichier*/
{
porigine cour=tete;
porigine nouveau;
fic=fopen("reseau.txt","r");
cour=0;
fscanf(fic,"%d%\n\n",&nb_ville);
for(i=0;i<nb_ville;i++)
{
nouveau=(porigine)malloc(sizeof(origine));
fscanf(fic,"%S %d",nouveau->nom,nouveau->nb);v[i]=nouveau->nom; /* c'et la que se pose le probleme*/
for(j=0;j<nb;j++)
{
fscanf(fic,"%s %d %d\n",nouveau->vois[j],nouveau->dvois[j],nouveau->type[j]);
}
nouveau->suiv=cour;tete=nouveau;
cour=tete;
fscanf("\n");
}
}
Répondre à nabelou1

Résultats pour C : dereferencing pointer to incomplete type

Yamaha AV-3103 Radio intégrée,Audio Decoders:Dolby Pro Logic,Dolby Pro Logic II,Dolby Digital 5.1,DTS 5.1,Chargeur CD/DVD: ,Puissance totale:500,Type:No,Divers: ,Nombre de pré-sélections: ,Radio intégrée,Type de radio :RDS,Entrées Audio... www.commentcamarche.net/guide-achat/yamaha-av-3103-1092236-fiche-technique
Yamaha YSP-600 Chargeur CD/DVD: ,Puissance totale:62,Type:No,Divers:YSP600 has a tidy amount of features,and can be hidden away under your TV,due to its small stature,Nombre de pré-sélections: ,Sorties HDMI:1,Entrées HDMI:2 www.commentcamarche.net/guide-achat/yamaha-ysp-600-1092201-fiche-technique
Yamaha YSP-500 Chargeur CD/DVD: ,Puissance totale:62,Type:No,Divers:Dolby Digital,DTS,Dolby Pro Logic II and DTS Neo:6,Nombre de pré-sélections: ,Entrées Audio analogiques:2,Entrées Audio numériques:2xOptical/1xCoaxial,Fiche produit au format... www.commentcamarche.net/guide-achat/yamaha-ysp-500-1069895-fiche-technique

Résultats pour C : dereferencing pointer to incomplete type

Comment changer vos pointeurs de sourisSous Windows Vista, si vous désirez changer les pointeurs de souris, voici comment faire: Faire un clic droit sur votre bureau et choisir "Personnaliser". Cliquez ensuite sur "Pointeurs de souris". Sous l'onglet "Pointeurs", faites votre... www.commentcamarche.net/faq/sujet-13599-comment-changer-vos-pointeurs-de-souris
Fstab : mettre des espaces dans le chemin du point de montageÉtant donné que les différentes options du fichier /etc/fstab sont séparées par des espaces, il n'est a priori pas possible de mettre des espaces dans le chemin du point de montage. Cette limitation se contourne aisément en tapant "\040" à la place... www.commentcamarche.net/faq/sujet-11108-fstab-mettre-des-espaces-dans-le-chemin-du-point-de-montage
Connecter un iPhone / iPod touch en WiFi à la LiveboxVoici la marche à suivre pour connecter un iPod touch à la Livebox : Configurer l'iPod Mettre la Livebox en Mode Association A voir également Configurer l'iPod Aller dans Réglages Sélectionner WiFi Déplacer le petit curseur WiFi... www.commentcamarche.net/faq/sujet-12490-connecter-un-iphone-ipod-touch-en-wifi-a-la-livebox

Résultats pour C : dereferencing pointer to incomplete type

Désactiver le clic sur un touch pad ! svp (Résolu)bonjour a tous Est ce qq'1 aurait l'extrême obligeance de me dire comment je peux désactiver le clic de mon touch pad. en fait des que je touche mon pad sur la partie qui sert à faire bouger le pointeur et bien ça clic (grrrrrrrrrrrrr).... www.commentcamarche.net/forum/affich-467824-desactiver-le-clic-sur-un-touch-pad-svp
Compter les points dans un tableau en PHP/SQL (Résolu)Bonjour à tous. J'aimerai faire le compte des points attribués a chaque joueur (10 pour le moment) qui sont entrés dans un tableau (MySQL). Je n'y arrive pas en PHP. Merci de me venir en aide si vous avez une idee ou un exemple concret. A... www.commentcamarche.net/forum/affich-2534320-compter-les-points-dans-un-tableau-en-php-sql
Creer un point lumineux sur une image (Résolu)bonjour question o adeptes de retouches photos comment peu ton faire pour creer un point lumineux sur une photo exemple pour simuler un percing et que ca fasse comme des rayon lumineux? et est ce que cest possible avec photo filtre merci a tous www.commentcamarche.net/forum/affich-2029874-creer-un-point-lumineux-sur-une-image

Résultats pour C : dereferencing pointer to incomplete type

Télécharger Torrent Finder FirefoxSavez-vous qu’il est désormais possible de rechercher et trouver des fichiers torrent plus vite grâce à Firefox ? Avec cette barre d’outils, vous n’aurez plus à chercher loin car vous aurez toujours vos recherches à portée de main quand vous le... www.commentcamarche.net/telecharger/telecharger-34056778-torrent-finder-firefox

Résultats pour C : dereferencing pointer to incomplete type

Denon DHT-FS3FS 3,Chargeur CD/DVD: ,Puissance totale:110,Type:No,Divers: ,Nombre de pré-sélections: ,Prise casque www.commentcamarche.net/guide-achat/denon-dht-fs3-1071567-fiche-technique
Yamaha YSP-4000Radio intégrée,Chargeur CD/DVD: ,Puissance totale:120,Type:No,Divers:XM Satellite Radio Ready,iPod Compatibility (with Optional YDS-10),SRS TruBass,IntelliBeam (With Optimizer Microphone),Nombre de pré-sélections: ,Radio intégrée,Type... www.commentcamarche.net/guide-achat/yamaha-ysp-4000-1070963-fiche-technique
Yamaha YSP-1100Chargeur CD/DVD: ,Puissance totale:120,Type:No,Divers:Built-in Digital amplifier individually drives 21 sound beam drivers and two woofers to deliver true multi-channel surround sound for an elegant home theatre system,SRS TruBass,... www.commentcamarche.net/guide-achat/yamaha-ysp-1100-1069845-fiche-technique

Résultats pour C : dereferencing pointer to incomplete type

Les comparateurs d'offres touristiques envahissent la Toile(Paris - Relaxnews) - Parce que les touristes sont de plus en plus en quête des meilleurs prix, des meilleures prestations touristiques et ne veulent pas avoir de mauvaises surprises, les comparateurs d'offres touristiques se sont multipliés sur la... www.commentcamarche.net/actualites/les-comparateurs-d-offres-touristiques-envahissent-la-toile-3025635-actualite.php3

Résultats pour C : dereferencing pointer to incomplete type

Langage C - Les listes chaînéesLa notion de structure autoréferrentielle Une structure autoréferrentielle (parfois appelée structure récursive) correspond à une structure dont au moins un des champs contient un pointeur vers une structure de même type. De cette façon on crée... www.commentcamarche.net/contents/c/cliste.php3
Transmission de données - Le câblageLes différents types de câblage Pour relier les diverses entités d'un réseau, plusieurs supports physiques de transmission de données peuvent être utilisés. Une de ces possibilités est l'utilisation de câbles. Il existe de nombreux types de câbles,... www.commentcamarche.net/contents/transmission/transcabl.php3
Code ASCIILe codage des informations Le morse a été le premier codage à permettre une communication longue distance. C'est Samuel F.B.Morse qui l'a mis au point en 1844. Ce code est composé de points et de tirets (un codage binaire en quelque sorte...). Il... www.commentcamarche.net/contents/base/ascii.php3