fbpx

Foros

ayuda dividir un st...
 
Avisos
Vaciar todo

ayuda dividir un string usando pic16f887

Página 2 / 2

lorenzorenzzo
Respuestas: 8
Registrado
Topic starter
(@lorenzorenzzo)
Ardero Activo
Registrado: hace 8 años

El pic se esta comunicando con la computadora usando para ello el puerto serie
el dato que llega al pic es 50101 necesito dividirlo para después guardarlo de la siguiente manera:
A=50
B=10
c=1

Responder
7 respuestas
sphinx
Respuestas: 651
Socio Socio
(@sphinx)
Ardero honorable
Registrado: hace 14 años

getchar() solo te va a coger un caracter.
No sé si dispones de la funcion gets() , pero sería lo conveniente en tu caso, porque almacena caracteres hasta el caracter de End of Line (EOL). Entonces:
char A;
char *TOTAL;
//o también : char TOTAL[256]; es decir un string lo suficientemente largo como para albergar lo que esperas.
...
...
gets(TOTAL);
// Funciones de manipulación de caracteres individuales:
A = TOTAL[0]; // Eso si A solo va a contener un caracter.
B= TOTAL[1]; // Idem.

Echale un vistazo a las funciones de manipulación de cadenas stdio.h

Slds, Sphinx.

Responder
lorenzorenzzo
Respuestas: 8
Registrado
Topic starter
(@lorenzorenzzo)
Ardero Activo
Registrado: hace 8 años

muchas gracias
se podrian tomar dos caracteres haciendo lo siguiente?

gets(TOTAL);
A = TOTAL[0,1];
B = TOTAL[2,3];

Responder
sphinx
Respuestas: 651
Socio Socio
(@sphinx)
Ardero honorable
Registrado: hace 14 años

Obviamente no. Si has declarado A y B como char, pues SÓLO pueden contener 1 char.
Si las declaras como:
char A[2];
char B[2];

...pues contendrán 2 caracteres cada una.

A la hora de copiar n caracteres del string TOTAL a A o a B, tienes que utilizar alguna función como strcpy() o strncpy(). Míralas en cstring

Intenta mirar a fondo algún manual de C / C++, porque estas preguntas son cuestiones bastante básicas.

Slds,
SPhinx.

Responder
Página 2 / 2
Compartir: