[Question langage c]
Résolu/Fermé
monnomestgilles
Messages postés
3
Date d'inscription
samedi 15 octobre 2005
Statut
Membre
Dernière intervention
19 octobre 2005
-
15 oct. 2005 à 18:06
monnomestgilles Messages postés 3 Date d'inscription samedi 15 octobre 2005 Statut Membre Dernière intervention 19 octobre 2005 - 19 oct. 2005 à 02:24
monnomestgilles Messages postés 3 Date d'inscription samedi 15 octobre 2005 Statut Membre Dernière intervention 19 octobre 2005 - 19 oct. 2005 à 02:24
A voir également:
- [Question langage c]
- Langage ascii - Guide
- Langage binaire - Guide
- Pascal langage - Télécharger - Édition & Programmation
- Langage pascal - Télécharger - Édition & Programmation
- Débuter langage batch windows - Guide
3 réponses
Ravachol
Messages postés
566
Date d'inscription
vendredi 5 mars 2004
Statut
Membre
Dernière intervention
30 octobre 2005
120
16 oct. 2005 à 09:27
16 oct. 2005 à 09:27
Salut,
Je ne vais pas vraiment faire avancer le schmilblick mais chez moi ton code, tel quel, compile sans problème.
Si tu pouvais nous poster l'erreur que te renvois ton compilo, ça aiderait un peu plus.
====
Mon chez moi ;-)
OS: GNU/Linux Slackware 10.1
Environnement de dev: KDevelop 3.1.2
Compilateur: gcc 3.3.4
====
A++
Je ne vais pas vraiment faire avancer le schmilblick mais chez moi ton code, tel quel, compile sans problème.
Si tu pouvais nous poster l'erreur que te renvois ton compilo, ça aiderait un peu plus.
====
Mon chez moi ;-)
OS: GNU/Linux Slackware 10.1
Environnement de dev: KDevelop 3.1.2
Compilateur: gcc 3.3.4
====
A++
monnomestgilles
Messages postés
3
Date d'inscription
samedi 15 octobre 2005
Statut
Membre
Dernière intervention
19 octobre 2005
16 oct. 2005 à 18:11
16 oct. 2005 à 18:11
Bonjour,
voici l'erreur que me donne mon compilateur (Microsoft Visual C++ 6.0):
error C2275: 't_choice' : illegal use of this type as an expression
see declaration of 't_choice'
error C2065: 'ptr_t_choice' : undeclared identifier
'=' : 'int ' differs in levels of indirection from 'struct t_choice *'
'free' : pointer mismatch for actual parameter 1
2 error(s), 3 warning(s)
Je viens de contater que si je déclare le pointeur de structure concernant ptr_t_data en premier, la seconde déclaration cause l'erreur que je décris ici-haut. Par contre, si je déclare ptr_t_choice en premier, les mêmes erreur seront données par le compilateur, mais concernant ptr_t_data. Autrement dit, quelqu'elle soit, la deuxième décaration du pointeur de struct ne passe pas.
J'espère que ça va aider et merci beaucoup.
Je constate que le système linux semble encore une fois fonctionner un coche au-dessus!
A++
voici l'erreur que me donne mon compilateur (Microsoft Visual C++ 6.0):
error C2275: 't_choice' : illegal use of this type as an expression
see declaration of 't_choice'
error C2065: 'ptr_t_choice' : undeclared identifier
'=' : 'int ' differs in levels of indirection from 'struct t_choice *'
'free' : pointer mismatch for actual parameter 1
2 error(s), 3 warning(s)
Je viens de contater que si je déclare le pointeur de structure concernant ptr_t_data en premier, la seconde déclaration cause l'erreur que je décris ici-haut. Par contre, si je déclare ptr_t_choice en premier, les mêmes erreur seront données par le compilateur, mais concernant ptr_t_data. Autrement dit, quelqu'elle soit, la deuxième décaration du pointeur de struct ne passe pas.
J'espère que ça va aider et merci beaucoup.
Je constate que le système linux semble encore une fois fonctionner un coche au-dessus!
A++
darkhorkeu
Messages postés
73
Date d'inscription
mardi 20 mai 2003
Statut
Membre
Dernière intervention
9 juin 2007
30
16 oct. 2005 à 18:38
16 oct. 2005 à 18:38
Bonjour,
Je crois qu'en langage C, il faut faire les déclarations de variables avant la moindre ligne de code.
Il m'est déjà arrivé d'avoir ce problème, mais peut-être que ce n'est pas le cas ici.
Voila comment j'ecrirai le code :
a+
Je crois qu'en langage C, il faut faire les déclarations de variables avant la moindre ligne de code.
Il m'est déjà arrivé d'avoir ce problème, mais peut-être que ce n'est pas le cas ici.
Voila comment j'ecrirai le code :
void main(void) { t_data * ptr_t_data; t_choice * ptr_t_choice; ptr_t_data = (t_data *) malloc(sizeof(t_data)); ptr_t_choice = (t_choice *) malloc(sizeof(t_choice)); free (ptr_t_choice); free (ptr_t_data); }
a+
monnomestgilles
Messages postés
3
Date d'inscription
samedi 15 octobre 2005
Statut
Membre
Dernière intervention
19 octobre 2005
19 oct. 2005 à 02:24
19 oct. 2005 à 02:24
Salut,
c'est exactement ça le problème!
En C et avec le compilateur que j'ai, il faut mettre les déclarationa avant la moindre ligne de code.
Je croyais qu'il était possible de faire la déclaration d'une variable juste avant de l'utilisée, bien sûr.
Merci beaucoup, mon problème est réglé!
c'est exactement ça le problème!
En C et avec le compilateur que j'ai, il faut mettre les déclarationa avant la moindre ligne de code.
Je croyais qu'il était possible de faire la déclaration d'une variable juste avant de l'utilisée, bien sûr.
Merci beaucoup, mon problème est réglé!