Autor Tema: Problemas de strings con C  (Leído 2090 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado tekag

  • PIC10
  • *
  • Mensajes: 25
Problemas de strings con C
« en: 17 de Marzo de 2005, 08:50:00 »
Hola gente!.

NO soy experto en C y tengo que hacer una modificacion.

El tema es el siguinte:

La rutina lee un string de bits de un impresor fiscal cuya informacion se muestra en otra PC que tiene un circuito cerrado de TV. Esta informacion esta separada en campos y tiene esta estructura:

|00001| latas de atún|00003000|000000001|2100|M|00001|00000000|000000000

A mi ame interesa mostrar 3 campos que son la cantidad (00003000) el articulo (latas de atún) y el precio (000000001) nada mas.Como veran tengo que leer cada campo y mostrarlo en la PC pero no son consecutivos segun mi interes.

Parte de la rutina que hace esto es:

void text_fiscal()
{
int i,j;

    fg_ceroizquierda =0;                            //buff_485  el bufer de almacenamiento  
    fg_space=0;                                         // put_char_485 es la funcion que muestra
    for(i=3;i<50;i++) {                               //en pantalla la informacion.
      if(buff_485 != 0x1c) {
        put_char_485(buff_485);
        watchdog();

Yo probe agragandole a  put_char_485(buff_485[i+10]) y de este modo me muestra primero de izquierda a derecha el campo cantidad y el precio pero no me aparece el campo articulo.

Como yo no soy experto en C me cuesta darme cuenta pero creo que hay por lo menos 3 maneras de hacer lo que quiero pero se me ocurre una:

1) 1.a) Si le coloco  i+10 a put_char_485 me muestra la cantidad
    1.b) Si lo dejo i solo me muestra el articulo
    1.c) Si le grego i +20 me muestra el precio

EL problema seria almacenar estos tres campos en variables y despues componerlas para formatearlas como yo quiero.


Habra alguien con experiencia que haya entendido esto y me pueda ayudar?



Muchas gracias a todos y buen fin de semana!.