Pb Invalid Conversion "char" to "char*"
Bonjour tout le monde ! Voilà, je galère un peu et bêtement .. En fait au départ j'arrivais à récupéré des trames envoyer par un anémometre via une liaison RS232 (donc une classe RS232 associé) mais seulement des bouts de trames .. Il faut donc que je récupère la trame en entier .. Ce que je sais c'est qu'elle commence par un "$" et se termine juste avant le 4e "$" rencontré. Pas spécialement compliqué, cependant j'ai un soucis .. Mon char bufferTmp doit contenir un caractère de la trame pour vérifier si oui ou non il y a un "$" mais bon j'ai l'erreur : Invalid Conversion "char" to "char*" (Car l'argument que demande getTrame est un char*). Bref, je suis un peu perdu, si quelqu'un a 5 minutes à me consacrer, je le remercie d'avance.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
void Anemometre::demarrerAcquisition()
{
PortRS232 * portAnemometre = new PortRS232();
vector<char> buffer;
char bufferTmp;
int len, init = 0;
init = portAnemometre->initialiserCom();
if(init == 1)
{
buffer.clear();
while(1)
{
/* capture de caractere sur la liaison RS232 */
while (portAnemometre->getTrame(bufferTmp) != "$")
{
// On continue la lecture sur portAnemometre sans incrémenter buffer
portAnemometre->getTrame(bufferTmp);
}
}
cout << "> Fermeture de la communication" << endl;
portAnemometre->closeCom();
cout << "> Communication terminé" <<endl;
} |
Re: Pb Invalid Conversion "char" to "char*&am
Citation:
Envoyé par kazarn
Code:
1 2 3
|
while (portAnemometre->getTrame(bufferTmp) != "$") |
cette ligne ce n'est pas très bon, $ devrait être entre simple quote '
et si gettrame renvoie un char * tu n'as qu'à déférencer.
Note: pour comparer des tableaux de caractères, c'est strcmp