Résolu Encore une fonction qui ne marche pas sous Linux

Solutions (2)
Tags :
  • Windows
  • Compile
  • Consoles
  • G++
  • linux
  • Programmation
|
Bonjour !
J'ai encore eu un problème (hé oui :p  ) avec une fonction que j'utilisais sans problème sous Windows mais qui fait des siennes avec Linux.
Voici la fonction et les endroits où je l'utilise, accompagné du message d'erreur en console. Je précise que je compile avec gcc (j'ai aucune idée de l'utilité de cette info, mais sait-on jamais :D  ). Merci d'avance pour votre aide.

  1. void supprimer(int **pointeurTableau, int taille, int positionSuppression)
  2.  
  3. {
  4.  
  5. int i;
  6.  
  7. int *temp = (int*)malloc((taille-1)*sizeof(int));
  8.  
  9. int *tableau = *pointeurTableau;
  10.  
  11.  
  12.  
  13. for(i =0;i < positionSuppression-1; i++)
  14.  
  15. {
  16.  
  17. *(temp+i) = *(tableau+i);
  18.  
  19. }
  20.  
  21.  
  22.  
  23. for(i = positionSuppression-1 ; i < taille; i++)
  24.  
  25. {
  26.  
  27. *(temp+i) = *(tableau+i);
  28.  
  29. }
  30.  
  31. *pointeurTableau = temp;
  32.  
  33. }
  34.  
  35. int main()
  36. {
  37. int tabChoix[9] = {0,1,2,3,4,5,6,7,8};
  38. int compteur = 9, choix;
  39.  
  40. scanf("%d", &choix);
  41. supprimer(&tabChoix, compteur, choix);
  42. ...
  43. }


Résultat :

  1. laila@Laila:~/Documents/Programmation/Morpion$ gcc debug.c -o debug -Wall
  2. debug.c: In function ‘main’:
  3. debug.c:41: warning: passing argument 1 of ‘supprimer’ from incompatible pointer type
  4. debug.c:7: note: expected ‘int **’ but argument is of type ‘int (*)[9]’
Contenus similaires
Meilleure solution
partage
|
Étrange que ça compile sous windows...

Pourquoi passe tu l'adresse du tableau ? un tableau est déjà un pointeur sur sa première case. Inutile de faire des pointeurs de pointeurs en paramètre de fonction.
  • Commenter cette solution |
Score
0
òh
òi
|
Meilleure réponse sélectionnée par Alcooline.
  • Commenter cette réponse |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS