begin process at 2012 05 30 07:42:21
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Questions sur les fonctions ! (suis un debutant)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Questions sur les fonctions ! (suis un debutant)

vendredi 14 mars 2003 à 17:48:07 | Questions sur les fonctions ! (suis un debutant)

sebclick

slt tlm

je programme en c++ depuis qlql semaines... et la je viens de decouvrir ce site... ça tombe bien j'ai un petit pb.

Lorsque l'on créer une fonction, peut elle retourner une chaine de caracteres ? (je lé déjà fé ac des entiers)
parce que la j'ai essayer mais j'ai une erreur.

j'ai nom1[20] en variables globales et voici ce que j'ai marqué pour ma fonction :

char aqui()
{
nom1="toto";
return nom1;
}

et j'ai 2 erreurs :

- "return : cant convert from char[99] to char"
- "aqui : function must return a value"

Alors si vous pouviez m'aider ce sera sympa
vendredi 14 mars 2003 à 17:49:32 | Re : Questions sur les fonctions ! (suis un debutant)

sebclick




en fait j'ai pas mit nom1="toto";

mais strcpy( nom1, "toto" );

sinon il y a une erruer de plus
-------------------------------
Réponse au message :
-------------------------------

> slt tlm
>
> je programme en c++ depuis qlql semaines... et la je viens de decouvrir ce site... ça tombe bien j'ai un petit pb.
>
> Lorsque l'on créer une fonction, peut elle retourner une chaine de caracteres ? (je lé déjà fé ac des entiers)
> parce que la j'ai essayer mais j'ai une erreur.
>
> j'ai nom1[20] en variables globales et voici ce que j'ai marqué pour ma fonction :
>
> char aqui()
> {
> nom1="toto";
> return nom1;
> }
>
> et j'ai 2 erreurs :
>
> - "return : cant convert from char[99] to char"
> - "aqui : function must return a value"
>
> Alors si vous pouviez m'aider ce sera sympa
vendredi 14 mars 2003 à 18:32:04 | Re : Questions sur les fonctions ! (suis un debutant)

BruNews

Administrateur CodeS-SourceS
tu dois retourner un pointeur et non un char.
char* mafunc()
{
char *p;
p = (char*) malloc(12);
if(p) strcpy(p, "Toto");
return p; // ainsi sera 0 ou valide
}

c'est a l'appelant de faire:
char *c;
c = mafunc();
if(c == NULL) return; // exemple
traitements avec *c.......
free(c); // il faut liberer la memoire
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

>
>
>
> en fait j'ai pas mit nom1="toto";
>
> mais strcpy( nom1, "toto" );
>
> sinon il y a une erruer de plus
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > slt tlm
> >
> > je programme en c++ depuis qlql semaines... et la je viens de decouvrir ce site... ça tombe bien j'ai un petit pb.
> >
> > Lorsque l'on créer une fonction, peut elle retourner une chaine de caracteres ? (je lé déjà fé ac des entiers)
> > parce que la j'ai essayer mais j'ai une erreur.
> >
> > j'ai nom1[20] en variables globales et voici ce que j'ai marqué pour ma fonction :
> >
> > char aqui()
> > {
> > nom1="toto";
> > return nom1;
> > }
> >
> > et j'ai 2 erreurs :
> >
> > - "return : cant convert from char[99] to char"
> > - "aqui : function must return a value"
> >
> > Alors si vous pouviez m'aider ce sera sympa
>
samedi 15 mars 2003 à 11:04:41 | Re : Questions sur les fonctions ! (suis un debutant)

vieuxLion

on peut aussi faire plus simple car tu dis que tu as défini la variable nom1[20] en globale et il est donc inutile de passer par de l'allocation dynamique.
char nom1[20];
char * maFunc()
{ strcpy(nom1, "toto"); return nom;}

-------------------------------
Réponse au message :
-------------------------------

> tu dois retourner un pointeur et non un char.
> char* mafunc()
> {
> char *p;
> p = (char*) malloc(12);
> if(p) strcpy(p, "Toto");
> return p; // ainsi sera 0 ou valide
> }
>
> c'est a l'appelant de faire:
> char *c;
> c = mafunc();
> if(c == NULL) return; // exemple
> traitements avec *c.......
> free(c); // il faut liberer la memoire
> BruNews, ciao...
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> >
> >
> >
> > en fait j'ai pas mit nom1="toto";
> >
> > mais strcpy( nom1, "toto" );
> >
> > sinon il y a une erruer de plus
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > slt tlm
> > >
> > > je programme en c++ depuis qlql semaines... et la je viens de decouvrir ce site... ça tombe bien j'ai un petit pb.
> > >
> > > Lorsque l'on créer une fonction, peut elle retourner une chaine de caracteres ? (je lé déjà fé ac des entiers)
> > > parce que la j'ai essayer mais j'ai une erreur.
> > >
> > > j'ai nom1[20] en variables globales et voici ce que j'ai marqué pour ma fonction :
> > >
> > > char aqui()
> > > {
> > > nom1="toto";
> > > return nom1;
> > > }
> > >
> > > et j'ai 2 erreurs :
> > >
> > > - "return : cant convert from char[99] to char"
> > > - "aqui : function must return a value"
> > >
> > > Alors si vous pouviez m'aider ce sera sympa
> >
>
samedi 15 mars 2003 à 11:06:26 | Re : Questions sur les fonctions ! (suis un debutant)

vieuxLion

...enfin...
return nom1;
bien sûr


-------------------------------
Réponse au message :
-------------------------------

> on peut aussi faire plus simple car tu dis que tu as défini la variable nom1[20] en globale et il est donc inutile de passer par de l'allocation dynamique.
> char nom1[20];
> char * maFunc()
> { strcpy(nom1, "toto"); return nom;}
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > tu dois retourner un pointeur et non un char.
> > char* mafunc()
> > {
> > char *p;
> > p = (char*) malloc(12);
> > if(p) strcpy(p, "Toto");
> > return p; // ainsi sera 0 ou valide
> > }
> >
> > c'est a l'appelant de faire:
> > char *c;
> > c = mafunc();
> > if(c == NULL) return; // exemple
> > traitements avec *c.......
> > free(c); // il faut liberer la memoire
> > BruNews, ciao...
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > >
> > >
> > >
> > > en fait j'ai pas mit nom1="toto";
> > >
> > > mais strcpy( nom1, "toto" );
> > >
> > > sinon il y a une erruer de plus
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > slt tlm
> > > >
> > > > je programme en c++ depuis qlql semaines... et la je viens de decouvrir ce site... ça tombe bien j'ai un petit pb.
> > > >
> > > > Lorsque l'on créer une fonction, peut elle retourner une chaine de caracteres ? (je lé déjà fé ac des entiers)
> > > > parce que la j'ai essayer mais j'ai une erreur.
> > > >
> > > > j'ai nom1[20] en variables globales et voici ce que j'ai marqué pour ma fonction :
> > > >
> > > > char aqui()
> > > > {
> > > > nom1="toto";
> > > > return nom1;
> > > > }
> > > >
> > > > et j'ai 2 erreurs :
> > > >
> > > > - "return : cant convert from char[99] to char"
> > > > - "aqui : function must return a value"
> > > >
> > > > Alors si vous pouviez m'aider ce sera sympa
> > >
> >
>
samedi 15 mars 2003 à 12:13:51 | Re : Questions sur les fonctions ! (suis un debutant)

BruNews

Administrateur CodeS-SourceS
bien sur que si tu places resutat dans une variable globale tu n'as pas a faire d'alloc memoire, c'etait didactique. De + pourquoi retourner un pointeur en ce cas, tout ton prog connait cette var globale.
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

> ...enfin...
> return nom1;
> bien sûr
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > on peut aussi faire plus simple car tu dis que tu as défini la variable nom1[20] en globale et il est donc inutile de passer par de l'allocation dynamique.
> > char nom1[20];
> > char * maFunc()
> > { strcpy(nom1, "toto"); return nom;}
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > tu dois retourner un pointeur et non un char.
> > > char* mafunc()
> > > {
> > > char *p;
> > > p = (char*) malloc(12);
> > > if(p) strcpy(p, "Toto");
> > > return p; // ainsi sera 0 ou valide
> > > }
> > >
> > > c'est a l'appelant de faire:
> > > char *c;
> > > c = mafunc();
> > > if(c == NULL) return; // exemple
> > > traitements avec *c.......
> > > free(c); // il faut liberer la memoire
> > > BruNews, ciao...
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > >
> > > >
> > > >
> > > > en fait j'ai pas mit nom1="toto";
> > > >
> > > > mais strcpy( nom1, "toto" );
> > > >
> > > > sinon il y a une erruer de plus
> > > > -------------------------------
> > > > Réponse au message :
> > > > -------------------------------
> > > >
> > > > > slt tlm
> > > > >
> > > > > je programme en c++ depuis qlql semaines... et la je viens de decouvrir ce site... ça tombe bien j'ai un petit pb.
> > > > >
> > > > > Lorsque l'on créer une fonction, peut elle retourner une chaine de caracteres ? (je lé déjà fé ac des entiers)
> > > > > parce que la j'ai essayer mais j'ai une erreur.
> > > > >
> > > > > j'ai nom1[20] en variables globales et voici ce que j'ai marqué pour ma fonction :
> > > > >
> > > > > char aqui()
> > > > > {
> > > > > nom1="toto";
> > > > > return nom1;
> > > > > }
> > > > >
> > > > > et j'ai 2 erreurs :
> > > > >
> > > > > - "return : cant convert from char[99] to char"
> > > > > - "aqui : function must return a value"
> > > > >
> > > > > Alors si vous pouviez m'aider ce sera sympa
> > > >
> > >
> >
>


Cette discussion est classée dans : nom1, questions, return, char, fonctions


Répondre à ce message

Sujets en rapport avec ce message

Petite question ayant attrait à la gestion de fichier. [ par meteore ] Voila je suis en train de faire un petit logiciel pour le classement de mes cds.J'ai donc créer une fonction permettant d'ajouter un cd dans une boite Abus de "protected" dans les classes ? [ par Galmiza ] Salut cher lecteur,Voici un exemple de ce qu'on voit assez souvent dans les codes, mais dont je ne saisi pas l'utilité:Dans une classe, protection des return tableau de caracteres en C++ [ par sozer2 ] Bonjour j'aimerai savoir comment retourner correctement un tableau de caractère en C++Voici mon code qui contient une erreur au niveau du return et au bug visual ? [ par magic_Nono ] petit test:au sein d'une classe, définissez un opérateur de cast vers char*exemple operator char*() { if(i_taille==0) return ""; client smtp probleme [ par lombredudragon ] Voila j'ai trouver un joli code sur le web. J'ai fait le menage et j'ai supprimer l'interface graphique.Donc mon but final c'est d'envoyer un fichier Liberation de memoire [ par gwenChina ] Bonjour a tous,Je viens de debuter mon stage, je suis donc nouveau dans ce forum.En fait j'ai un probleme de liberation de memoire. J'alloue un pointe return char [ par nem02004 ] char test() {     char tst[10];     sprintf(tst,"looool");     return tst;}int main() {    MessageBox(NULL,test,NULL,NULL);}Je epnse que vous co Une espece d'InputBox maison [ par ChrOnOs83 ] Bonjour à tous,J'ai un petit souci. J'ai fait une fenêtre supplémentaire qui est appeler par la fenêtre principale pour demander à l'utilisateur une i return char ? [ par martram ] salutj'aimerais faire un retour de fonction d'une chaine de charactères.. j'aimerais savoir la façon idéal pour le faire.. j'ai vu sur un autre site q Lecteur secteur disque [ par akalys ] Bonjour à tous,Je désire créer un petit prog pour lire les secteur d'un dique.(en hexa)Voici mon code :#include #include #include using namespace s


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,902 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales