Pessoal,
To apanhando aqui para converter uma variável do tipo String em ponteiro. Tenho uma função ja pronta que tem o seguinte estrutura:
int8_t sendATcommand(char* ATcommand, char* expected_answer1, unsigned int timeout){
...
}
Ocorre que o valor a ser passado para ATcommand em meu código é do tipo String e eu não consigo transforma-lo em ponteiro char. já tentei da forma abaixo:
var1 = new char[var2.length()+1];
strcpy(var1, var2.c_str());
com isso, var1 fica visualmente igual a var2, porém se voce faz uma comparação do tipo:
if (var1 == var2){
Serial.println("igual")
}else{
Serial.println("diferente")
}
o retorno é sempre "diferente";

Alguém tem alguma sugestão?
Agradeço qualquer ajuda.

Zé Roberto

Exibições: 244

Responder esta

Respostas a este tópico

Se você ja usou strcpy significa que tem acesso a string.h.

Para se comparar duas strings o correto seria

if (strcmp((var1,var2) == 0)
{
Serial.println("Igual")
}

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço