Bonjour,
je ne connais que peu le langage C, et suis actuellement embourbé dans le problème suivant. J'ai cette fonction:
TModel est défini ailleurs, et jusque là tout va bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 void* Create() { struct TModel* pModel; /* ... */ pModel = (struct TModel*)malloc(sizeof(struct TModel)); memset(pModel, 0x0, sizeof(struct TModel)); /* remplit les champs de la structure */ return (void*)pModel; }
Je souhaite récupérer (dans une autre fonction) la structure ainsi fabriquée (pour lire certains de ses champs). J'avais cru que le code suivant:
fonctionnerait, mais... Sans générer d'erreur ou crasher le programme, il ne renvoit pas la bonne valeur des champs (je fais un test sur un champ entier initialisé dans Create() )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 struct TModel* pModel; pModel = (struct TModel*) Create;
Il est possible que ça joue: j'utilise un compilateur C++ (le Visual Studio Express de Microsoft). Mon code est un code C (fichier .c en tout cas), mais il est dans un "projet" C++.
D'avance merci![]()
Partager