begin process at 2012 05 30 16:40:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

renvoi de type char[] d'une fonction


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

renvoi de type char[] d'une fonction

mardi 23 décembre 2003 à 18:02:31 | renvoi de type char[] d'une fonction

sbouli

Membre Club

Bonjour,

Je suis ULTRA débutant et je cherche à faire une fonction renvoyant du char, voila le principe :

char lectureIni (char section[], char clef[], char fichier[])
{
//GetPrivateProfileString("OPTIONS","chemin",NULL,chemin,sizeof(chemin),".\\TEST.INI");
char temp[100];
GetPrivateProfileString(section,clef,NULL,temp,sizeof(temp),fichier);
return temp;
}

Le problèmes est que temp est de taille 100 alors que le return n'est qu'un char pas un tableau de char mais

char[100] lectureIni(char ....

ne passe pas !

et impossible de trouver des fonctions renvoyant des strings ...

Je voulais éviter l'utilisation de variables globales pour ça.

Merci pour votre aide

Stéphane
mardi 23 décembre 2003 à 18:18:43 | Re : renvoi de type char[] d'une fonction

hilairenicolas


il faut utiliser un pointeur

(programme principal)
char *maChaine = lectureIni(...);

(methode lectureIni)
char * lectureIni (char section[], char clef[], char fichier[])
{
char * temp = new char[100];
....

return temp;
}


(ne pas oublier en fin de programme de faire :
delete maChaine;
mardi 23 décembre 2003 à 18:29:19 | Re : renvoi de type char[] d'une fonction

sbouli

Membre Club
Merci, en fait j'ai fait ça :

char * lectureIni (char section[], char clef[], char fichier[])
{
//GetPrivateProfileString("OPTIONS","chemin",NULL,chemin,sizeof(chemin),".\\TEST.INI");
char * temp = new char[100];
GetPrivateProfileString(section,clef,NULL,temp,sizeof(temp),fichier);
return temp;
}

et dans le programme principal :

SetDlgItemText(hWnd,IDC_CHEMIN, lectureIni("OPTIONS","chemin",".\\TEST.INI"));


Le fichier ini contient :
[OPTIONS]
chemin=http://www.domaine.com/toto.cfm

mais lorsque je fais tourner le soft, il me renvoi : "htt"
dans la boite d'edition et pas : "http://www.domaine.com/toto.cfm"

il est où le bleme ??

Stéphane


mardi 23 décembre 2003 à 18:31:09 | Re : renvoi de type char[] d'une fonction

sbouli

Membre Club

la ligne : //GetPrivateProfileString("OPTIONS","chemin",NULL,chemin,sizeof(chemin),".\\TEST.INI");


est un résidu en commentaire, désolé.

Stéphane
mardi 23 décembre 2003 à 18:46:56 | Re : renvoi de type char[] d'une fonction

hilairenicolas


parce qu'il faut que tu mettes la taille de ton buffer à la place de sizeof(temp) qui lui te donne le nombre d'octets utilisés pour coder un char
mardi 23 décembre 2003 à 19:01:32 | Re : renvoi de type char[] d'une fonction

sbouli

Membre Club
euuuuu ok,
c'est quoi la fonction qui renvoi la taille du buffer ?
Stéphane
mardi 23 décembre 2003 à 19:13:39 | Re : renvoi de type char[] d'une fonction

hilairenicolas


char * temp = new char[100];

ca, c'est ton buffer, c'est toi qui en a determiné la taille
mardi 23 décembre 2003 à 19:17:23 | Re : renvoi de type char[] d'une fonction

sbouli

Membre Club
Effectivement

Merci


Cette discussion est classée dans : fonction, temp, chemin, char, renvoi


Répondre à ce message

Sujets en rapport avec ce message

manipulation LPCWSTR et char[] [ par ebooserge ] salut a tous,je suis en train de realiser un petit prog avec directshow et j'ai quelques diffcultées.je dois utiliser une fonction qui prend en parama Gros soucis Ping en c [ par mohken ] Bonjour, J'avais déjà poser une question à ce sujet mais j'ai encore un problème pour pinger. J'ai récupéré une fonction qui permet de le faire sur le une question [ par deck_bsd ] Bonsoir tous le monde, Voila une question me trote dans la tête depuis quelque temps. Et notament qu'en j'ai vu la signature de la fonction strdup : Mettre un char * dans un float. [ par kaervas ] Bonjour, J'aimerais recuperer une chaine du genre "2.16" et la mettre dans un float.. J'ai essayer de recoder la fonction mais probleme avec la precis Fonction plus ou moins basic [ par nem02004 ] Voila je voudrais faire une fonction Test du genre:Test(108.111.108); qui me retourneré "lol" (avec les CHR).Donc je fait:char Test Convertir un Int en Char [ par MaxSoldier ] Bonjours, tout d'abord, j'aimerai m'excuser car je sais que cette question a déjà été posée des milliards de fois mais, je n'ai jamais réussi à faire Probleme de fonction gettok() pour un bot IRC [ par Tidam ] Voilou je m'explique, je suis en train de coder un bot IRC mais j'ai un ptit probleme. J'ai cree ma propre fonction gettok (d'ou vient surement le pro [C] Méthode (Fonction, procédure) interne, locale [ par nitrique ] Bonjour @ tous,J'aimerais faire un fonction locale (c'est à dire: Dans ma fonction)Mais ça pête.int SaisiePasse(char matricule[lMaxCode]) {    char to Variable de type char [ par wolfcyber ] bonjour, J'aimerais savoir l'equivalent en C++ de la fonction "Mid(int nStart,int nCount)" de la classe CString, pour une variable de type char. Cet


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 : 1,295 sec (3)

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