Bonjour
J'ai un prog tout simple
une fonction *nouveauVecteur qui retourne un pointeur sur un tableau de 3 réels
Une fonction main qui affiche ce tableau
je souhaite afficher le contenu de mon tableau dans mon main.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 float *nouveauVecteur() { float *pVect; float vect[3]; pVect = (float *) malloc ( 3 * sizeof(float) ); printf ("V0:\n"); scanf ("%f", &vect[0]); printf ("V1:\n"); scanf ("%f", &vect[1]); printf ("V2:\n"); scanf ("%f", &vect[2]); pVect = &vect[0]; return pVect; } int main (void) { float *pVecteur; pVecteur = nouveauVecteur(); printf ("contenu de pVecteur: %f \n", *pVecteur); printf ("contenu de pVecteur: %f \n", *pVecteur); }
ça fait 2 heures que je suis dessus ...
Je me suis apercu du probleme est le suivant:
Mon 1er printf affiche bien le contenu de la 1ere case du pointeur
Le 2d printf (copie conforme de la ligne precedente, qui devrait afficher la même chose) m'affiche n'importe quoi ...
Donc lorsque je veux afficher les cases suivantes (pVecteur ++), c'est n'importe quoi également ...
L'un d'entre vous à une idée ??
Je remarque que lorsque j'affiche le contenu de mon tableau dans la fonction, tout va bien ...
Merci
Matthieu
Partager