Addition de sizeof (i) au lieu de i - C - Programmation
Marsh Posté le 21-09-2003 à 17:01:57
dis ton code, je pense meme pas qu'il soit valable
ptstruct = calloc (nb_etud, sizeof(Etud));
ptstruct[i].pCote = calloc (ptstruct[i].nbCote, sizeof (int));
quand au reste, j'y comprends rien
Marsh Posté le 21-09-2003 à 17:02:20
&(ptstruct+i)
ça me semble dangereux ça
c'est pas plutôt ptstruct[i] la manière propre de le faire ?
edit:
Marsh Posté le 21-09-2003 à 17:03:17
antp a écrit : &(ptstruct+i) |
il est complètement pommé entre pointeurs, *, &, ->, [] ...
Marsh Posté le 21-09-2003 à 17:04:48
pommé ? il a mangé trop de pommes ?
(c'est plutôt paumé, non ? )
Marsh Posté le 21-09-2003 à 17:05:14
ReplyMarsh Posté le 21-09-2003 à 17:06:44
antp a écrit : pommé ? il a mangé trop de pommes ? |
peut être qu'il a un mac
Marsh Posté le 21-09-2003 à 17:29:05
Ça marche pas mieux ?
Marsh Posté le 21-09-2003 à 17:30:39
si, ça marche mais c pas pour autant que c'est correct ^^
Marsh Posté le 21-09-2003 à 17:36:37
D'où le "mieux" dans ma phrase
scanf ("%d",ptstruct[i].pCote[j]);
->
scanf ("%d",&(ptstruct[i].pCote[j]));
Marsh Posté le 21-09-2003 à 17:37:12
bizarre a lecole en 1ere ils ont exactement le meme enonce pour linstant
Marsh Posté le 21-09-2003 à 17:39:10
red faction a écrit : bizarre a lecole en 1ere ils ont exactement le meme enonce pour linstant |
Ou donc?
Marsh Posté le 21-09-2003 à 17:40:50
Koude a écrit : Il en veut pas : |
ha, bizarre, il me semblait que ça marchait.
Je fais rarement du C/C++, et en plus quand j'en fais je le fais mal
Marsh Posté le 21-09-2003 à 17:42:18
antp a écrit : |
Et c'est maintenant que tu le dis ^^
Merci qd même, de toute façon la ça a l'air de fonctionner
Marsh Posté le 21-09-2003 à 17:43:18
Et t'es en train de me dire qu'en premiere ils font deja de l'alloc dynamique de struct ?
Marsh Posté le 21-09-2003 à 17:45:23
T'es sur que c'est pas en deuxieme ?
Au fait, c koi ton ptit nom propre ?
Marsh Posté le 21-09-2003 à 17:46:26
je suis en mission inconnue puis jparle pas au fossilles non plus
Marsh Posté le 21-09-2003 à 17:48:06
red faction a écrit : je suis en mission inconnue puis jparle pas au fossilles non plus |
alors ça c petit !
Marsh Posté le 21-09-2003 à 17:48:10
bon ouais c ptet en 2e jsais plus mais tjs qd 1e y font pratiquement tout en C
Marsh Posté le 25-09-2003 à 15:51:29
scanf ("%d",ptstruct[i].nbCote);
et ça aussi ça marche?
T'utilise 3 fois scanf et 2 fois tu te plantes!
Passes par une variable intermédiaire, c'est plus sûr.
Code :
|
puis après:
Code :
|
Marsh Posté le 21-09-2003 à 16:51:11
J'explique mon cas :
Soit ceci :
J'alloue dynamiquement cette structure :
ensuite :
Et lorsque je veux remplir ce tableau avec ça :
Y a un bleme avec l'initialisation
Donc si je veux 5 * pCote, et que je les initialise avec
1,2,3,4,5 ben quand je les imprimerai ça donnera :
1,4,9,13,17 soit
(ptstruct+i)->pCote+sizeof(j));
C'est clair nan ?
Une solution ?
ça doit être une bete erreur mais bon...
Message édité par koude le 21-09-2003 à 17:28:21