Ok donc si Val est entre 0 et 9 compris tu copie une "cellule" de ton tableau et si non tu copie val
Si je ne me trompe pas sa devrais donnée un truc du genre de :
Code C/C++ :
void test(int val)
{
if (val>=0 && val<10)
{
pos=tab[val];
}
else
{
pos=&val;
}
}
Tu remarqueras que j'ai viré les "return" et passé ta fonction en void (ne retourne rien)
Par contre ta fonction reçois un int pas un pointeur sur int (donc ATTENTION il est possible que la 1ére valeur soit comprise entre 0 et 9 alors que c'est une image que tu n'a pas crée

)
En C++ tu peut faire sa :
Code C/C++ :
void test(int val)
{
pos=tab[val];
}
void test(int* val)
{
pos=val;
}
Comme sa si val est un int tu entre dans la 1ér fonction si c'est un int* dans la seconde.
Je ne sait plus par contre si le C autorise les redéfinitions
Si non il fraudais que tu ajoute un flag qui sauvegarde cette info de façon à savoir à l'avance ce que tu veut récupérer plutôt que d'avoir à le testé (je pense qu'il faudrait que tu revoie l'analyse pas vraiment le code, soit le "quoi faire" pas le "comment faire")
Autre idée (mais
attention c'est du bricolage en contournant certaine sécurité de l'interpréteur de code donc méfiance)
Code C/C++ :
//Appel de test :
test((int*)inValeur) //la tu caste la variable que sa soit un int ou un int* tu recevras un int* problème sa ne sera pas forcément un pointeur est ça c'est VRAIMENT pas propre
//Déclaration de test :
void test(int* val)
{
if (val>=0 && val<10)
{
//Du coup ici tu re-caste en int pour récupérer une valeur et non un pointeur (encore une fois ce n'est VRAIMENT pas propre)
pos=tab[(int)val];
}
else
{
pos=val;
}
}
Mais il vaudrais
vraiment mieux que tu ajoute une variable (ou un tableau de variable

) qui indique la "provenance" de ton image

si non il y à de gros risque que sa finisse par être impossible à maintenir comme code
PS :
Je te conseil aussi de toujours ajouter les "{" et "}" quand tu fait un if (même quand il n'y à qu'une seul ligne dans le if si non la lisibilité en prend un coup, enfin ce n'est que mon havie, d'autre développeur te dirais sans doute qu'il est inutile de surcharger ton code avec ça

)
Amicalement
1000 recherches sur Google = 1Km de voiture en CO² (réfuté par Google
)
1000 recherches sur Forestle = 100 m² de forêt tropicale sauvé
.
Surfez écolo 