Bonjour j'ai un problème quand je veux éxecuter mes procédures
j'ai le message d'erreur suivant
main.cpp:49:18: error: invalid conversion from ‘int’ to ‘int*’ [-fpermissive]
49 | affiche(Tab[T]);
| ~~~~~^
| |
| int
main.cpp:27:18: note: initializing argument 1 of ‘void affiche(int*)’
27 | void affiche(int Tab[]){
| ~~~~^~~~~
je suis sûr que c'est un oubli bête de ma part mais je n'arrive pas à trouver la solution.
voici mon code
#include <iostream>
#include <stdio.h>
#include <stdlib.h> // pour générer nombre aléatoire
#include <chrono> // pour avoir un timer
#define T 7 //libre de changer la taille
using namespace std::chrono;
using namespace std;
void tri_bulle(int Tab[]){
for (int i=0 ; i < T-1; i++)
{
for (int j=0 ; j < T-i-1; j++)
{
/* Pour un ordre décroissant utiliser < */
if (Tab[j] > Tab[j+1])
{
int tmp = Tab[j];
Tab[j] = Tab[j+1];
Tab[j+1] = tmp;
}
}
}
}
void affiche(int Tab[]){
for (int i=0;i<T;i++){
cout<<Tab[i];
}
}
int main()
{
srand (time(NULL));
//permet d'avoir des nouveaux nombre aléatoire a chaque nouvelle éxécution du programme
auto start = high_resolution_clock::now(); // démarre le timer
int Tab[T];
for (int i=0;i<T;i++){ // création du tableau
Tab[i]=rand() % 100 + 1;
//génere un nombre aléatoire compris entre 1 et 100 qui va être placé dans le tableau
}
affiche(Tab[T]);
tri_bulle(Tab[T]);
affiche(Tab[T]);
auto stop = high_resolution_clock::now(); //arette le timer
auto duration = duration_cast<microseconds>(stop - start); //calcul le temps d'éxécution
cout << endl<< "Temps d'éxécution: "<< duration.count() << " microseconds" << endl;// affiche le temps d'éxécution
return 0;
}
Bonjour, Merci d'indiquer un titre de sujet en rapport avec votre problématique.
Mauvais titre
Le titre est un élément important qui ne doit pas être négligé. N'oubliez pas cette règle simple : le titre idéal résume la question que vous allez poser en une petite phrase. Il doit permettre aux visiteurs de se repérer facilement dans le forum visité et d'identifier le sujet à sa seule lecture.
Vous pouvez utiliser divers préfixes comme [Erreur], [MySQL], [Compatibilité], etc... Aussi, pensez à consulter les règles propres à chaque forum (visibles dans les topics épinglés en haut des sections).
De plus, choisir un bon titre permet de rendre plus faciles les recherches des autres membres.
Les titres de type "besoin d'aide" ou "problème" ne sont pas tolérés.
Merci de modifier votre titre. Pour cela, éditez le premier message de votre sujet.
Je dirait même que tu refile un élément de tableau (soit un entier) à tes fonctions, alors qu'elles attendent un tableau (soit un pointeur).
+1 rouloude, les pointeurs nu (ou pointeurs C-style) posent énormément de problèmes, préfère std::array ou std::vector.
Problème procédure
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
git is great because Linus did it, mercurial is better because he didn't.