Fonction, tableau et pointeur
Bonjour à tous,
Je débute le langage C après avoir fait du python.
Je souhaite réaliser un programme qui me donne le poids, la taille et la vitesse d'un animal.
J'ai réalisé ceci et des problèmes apparaissent:
Code:
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 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| #include <stdio.h>
#include <stdlib.h>
#include <string.h>
int proprietes(char Nom[]) {
int tableau[3];
int Loup[3] = {80,80,60};
int Ours[3] = {300,150,30};
int Lynx[3] = {30,60,80};
if (Nom == "Loup") {
tableau[0] = Loup[0];
tableau[1] = Loup[1];
tableau[2] = Loup[2];
}
else if (Nom == "Ours") {
tableau[0] = Ours[0];
tableau[1] = Ours[1];
tableau[2] = Ours[2];
}
else if (Nom == "Lynx") {
tableau[0] = Lynx[0];
tableau[1] = Lynx[1];
tableau[2] = Lynx[2];
}
return tableau; // warnings : return makes integer without a cast - function returns adress of local variable
}
int main() {
char Animal[5] = "Loup";
int tableau[3] = proprietes(Animal); // error : invalid initializer
printf("\nVos caracteristiques :\n\n");
printf(" Animal : %s\n",Animal);
printf(" Poid : %s\n",tableau[0]);
printf(" Taille : %s\n",tableau[1]);
printf(" Vitesse: %s\n",tableau[2]);
return 0;
} |
J'ai cherché, et j'en ai déduis qu'il fallait définir comme type de retour un pointeur sur mon tableau :calim2: .
Parce que en C on ne peut pas retourner un tableau 8O .
Mais comment puis-je utiliser mon pointeur ... ... pour ce que je désire ? On dirait qu'il faut utiliser des notions très compliquées pour un problème simple :weird: .
Ou alors je peux faire autrement pour ce que veux réaliser ?
Merci par avance pour vos indication.