[C] fonction retournant une chaine de caract

Fermé
tophe03 Messages postés 327 Date d'inscription lundi 24 janvier 2005 Statut Membre Dernière intervention 14 avril 2010 - 20 août 2005 à 23:23
mamiemando Messages postés 33077 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 avril 2024 - 23 août 2005 à 00:51
Bonjour à tous

Je voudrais savoir comment créer une fonction en C retournant une chaine de caractères, et comment la récupérer ensuite.
Une autre question : atof retourne t-il un float ou un double?

Merci d'avance
Tophe
A voir également:

2 réponses

blurk Messages postés 486 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 15 mars 2009 160
21 août 2005 à 13:51
pour faire une fonction qui retourne une chaine

il faut faire une fonction de type

char *mafonction( );

(attention à allouer suffisament de mémoire à ce qui va recevoir le retour)
cela se manimpule come une chaine de caractère. exemple :

strcpy(machaine,mafonction( ) )


atof est bien une fonction de type double:

#include <math.h>
double atof(const char *s);


cordialement
2
tophe03 Messages postés 327 Date d'inscription lundi 24 janvier 2005 Statut Membre Dernière intervention 14 avril 2010 5
21 août 2005 à 17:47
Salut

Pour la fonction retournant une chaine de caractère, j'ai réussi. Merci.

Par contre, lorsque j'utilise la fonction atof, j'ai un souci. En fait, je veux récupérer un double à partir d'une boite de dialogue (API win32). Mais je n'arrive à récupérer que la partie entière, même avec atof.

@+
Tophe
0
Kermitt31 Messages postés 3669 Date d'inscription jeudi 15 juillet 2004 Statut Contributeur Dernière intervention 8 août 2006 492 > tophe03 Messages postés 327 Date d'inscription lundi 24 janvier 2005 Statut Membre Dernière intervention 14 avril 2010
22 août 2005 à 11:14
est ce qu'il n'y a pas un problème de '.' ou de ','... je sais pas si c'est clair ce que je dis.
Peut etre que tu mets une ',' et qu'il faudrait que tu mettes un '.' quand tu tapes ton réel (ou vice versa).
0
tophe03 Messages postés 327 Date d'inscription lundi 24 janvier 2005 Statut Membre Dernière intervention 14 avril 2010 5 > Kermitt31 Messages postés 3669 Date d'inscription jeudi 15 juillet 2004 Statut Contributeur Dernière intervention 8 août 2006
22 août 2005 à 18:22
salut

J'ai essayé les deux, et ca ne change rien. En fait, je ne sais pas si ca vient de atof, ou de la manière que j'utilise pour récupérer un double à partir d'une boite de dialogue. D'abord j'utilise GetDlgItemText dans la procédure de dialogue puis je récupère le texte entré dans la prodédure de fenêtre principale grâce à DialogBoxParam et ensuite je convertis la chaine de caractères avec atof. Je ne sais si c'est correct.

@+
Tophe
0