Pages : 1
#1 Le 23/08/2013, à 09:35
- kboo
C: de int vers char*
Bonjour,
J'ai une fonction que je vais appeler "int fonction(char* entree)" qui n'accepte que un tableau de caractères (char*), or j'ai une fonction "char autreFonction()" qui renvois un caractère. le Problème c'est comment faire pour mettre la sortie de autreFonction dans l'entrée de fonction, autrement dit:
int fonction(char* entree)
{
// ....
return 0;
}
char autreFonction()
{
// ....
return 'a';
}
fonction(autreFonction()); // ???
En concret voici ce que je veux éviter:
int Q = fonction();
char QSTR[1];
QSTR[0] = (char)pA->getQ();
char QG_STR[1];
sprintf(QG_STR, "%d", Q);
if(strcmp(QG_STR, QSTR) != 0)
{
//...
}
merci bien!
Dernière modification par kboo (Le 23/08/2013, à 10:38)
Hors ligne
#2 Le 23/08/2013, à 09:50
- Hoper
Re : C: de int vers char*
fonction(autreFonction()); // ???
Bein oui... Par contre, j'ai pas de C depuis TREEEEEES Longtemps (et j'ai toujours été mauvais en plus) mais la, comme ça, il y a truc qui chiffonne. D'un coté tu attend une carrote (char*) de l'autre tu lui envoi une pomme de terre (un char). T'es sur de ton coup ?
EDIT : Bon, vu que je comprend rien à la suite du message que tu as ajouté entre temps, tu peux surement ne pas tenir compte du mien (mais quand meme il me semble qu'il y a un manque de logique quelque part...)
Dernière modification par Hoper (Le 23/08/2013, à 09:54)
Mes tutos et coups de gueule :
http://hoper.dnsalias.net/atdc/
Mastodon: @hoper@framapiaf.org
Hors ligne
#3 Le 23/08/2013, à 09:53
- kboo
Re : C: de int vers char*
fonction(autreFonction()); // ???
Bein oui... Par contre, j'ai pas de C depuis TREEEEEES Longtemps (et j'ai toujours été mauvais en plus) mais la, comme ça, il y a truc qui chiffonne. D'un coté tu attend une carrote (char*) de l'autre tu lui envoi une pomme de terre (un char). T'es sur de ton coup ?
c'est exact, j'ai fait exprès... je cherche un moyen qui ne soit pas moche de faire ça
Hors ligne
#4 Le 23/08/2013, à 10:24
- kboo
Re : C: de int vers char*
petite modif pour le code:
int fonction(char* entree)
{
// ....
return 0;
}
int autreFonction()
{
// ....
return 49;
}
fonction(autreFonction()); // <<<<problème ici
merci bien
Hors ligne
#5 Le 23/08/2013, à 11:23
- pingouinux
Re : C: de int vers char*
Bonjour,
Je reconnais que c'est un peu tordu :
main(){
char c;
printf( "%c\n",fonction( ((c=autreFonction()),&c) ) ); // ???
}
Hors ligne
#6 Le 24/08/2013, à 12:48
- no_spleen
Re : C: de int vers char*
Salut,
Je ne dois pas bien comprendre ton problème, car j'ai l'impression qu'il suffit de faire cela
char a = autreFonction();
int b = fonction(&a);
Hors ligne
#7 Le 24/08/2013, à 14:04
- Haleth
Re : C: de int vers char*
Tu écrit plusieurs lignes, comme tout le monde, ou tu fais une fonction pour cela
Ubuntu is an ancien African word which means "I can't configure Debian"
Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.
Hors ligne
Pages : 1