Olá galera!

Estou utilizando arduino + servo motor + porta serial.

Ao mudar o angulo do servo motor, o arduino mostra o valor na porta serial.

Mas como converter 180 (tipo inteiro) para 180 (tipo string)?

Exibições: 3983

Responder esta

Respostas a este tópico

Em C, char é um inteiro ainda.

Converta cada caracter para o equivalente em inteiro, e faça o multiplicador.

O char é representado de acordo com a tabela ASCII.

http://www.abusar.org.br/images/ascii.gif

Logo, a string 180 ficariam 3 inteiros: 49 56 48

Como podemos reparar o deslocamento é 48, '0'= 48, então, basta subtrair 48 do número para ter-se a conversão.

Portanto: (49-48 = 1) (56-48= 8) (48-48=0) -> 1 8 0

Pegamos os multiplicadores.

Percorra o vetor do final para o início, multiplicando a variável de controle por 10 a cada laço (começando com 1)

Tipo isso:

int mult = 1;

int finalNumber = 0;

char[] string;

int i = lenString;

while(i>=0){

 finalNumber += mult*string[i];

mult  = mult*10;

 i--; 

}

Espero ter ajudado.

O Kennedy não perguntou sobre transformar string em inteiro, nem char em inteiro.

Ele perguntou o contrário: transformar inteiro em string.

http://stackoverflow.com/questions/7910339/how-to-convert-int-to-st...

Falha no engano então.

kkkkk.

Mas o algoritmo é espelhavel.

Valeu!

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço