Fonction qui renvoit une chaine... - C++ - Programmation
Marsh Posté le 05-11-2006 à 13:15:53
1/ c'est <string> qu'il faut inclure
2/ pourquoi tu l'inclus si c'est pas pour l'utiliser ? utilise plutot std::string a la place de ces char*
Marsh Posté le 05-11-2006 à 13:35:38
euh je n'utilise aucun char* justement j'essaye de les eviter... j'ai déclarer mes variable comme des tableaux de caractères...
"std::string" je ne connais pas :s
Marsh Posté le 05-11-2006 à 14:35:20
Apparemment, c'est juste du C que tu fais donc, mauvaise cat.
Un tableau c'est quoi? Et tu renvois un char seul, si on te demande ça, t'as du voir en cours comment renvoyer un "tableau" à partir d'une fonction non?
Pourquoi t'évites les char* ?
Marsh Posté le 05-11-2006 à 15:11:22
non je suis bien en C++ ^^
ah et c'est juste que ma prof nous a conseiller d'eviter les char*....
sinon j'ai réussi j'ai tout simplement transformer ma fonction en procedure qui recoit en entrée/sortie mon tableau de caractère
merci quand meme !
Marsh Posté le 05-11-2006 à 15:33:39
sergeith a écrit : non je suis bien en C++ ^^ |
Bon, ben comme KangOl,
Marsh Posté le 05-11-2006 à 22:38:48
#include <string>
std::string menu(const std::string& b)
{
std::string t = "Toto";
t += b;
return t;
}
par exemple...
Pour ton message d'erreur : "cannot convert "char" to "char *" ça veut dire qu'il ne peut pas convertir b (qui est un char* ou un char[], c'est à peu près la même chose) en char tout cours. Pour renvoyer une chaine, c'est char* en C ou std::string en C++. char c'est juste un caractère !
Marsh Posté le 07-11-2006 à 18:42:45
merci pour tes explications ( meme si je savais d'ou venait mon erreur juste je ne savais pas comment renvoyer une chaine)
Marsh Posté le 05-11-2006 à 13:05:42
Bonjour!
j'ai un petit problème pour l'exo que je fais en ce moment pour mon bts...
j'aimerez qu'une de mes fonctions renvoye une chaine de caractère:
j'ai bien mis tout en haut de mon programme une include <string.h>
la declaration de la variable appelant et 'appel de ma fonction est:
char b[26];
menu(b);
-----------
et donc si je met juste
char menu (char b[26]){
traitement;
return b;
}
j'ai l'erreur : "cannot convert "char" to "char *"
quelqu'un peut il m'aider ?