TODOPIC

Microcontroladores PIC => dsPIC => Mensaje iniciado por: KALLITOS en 15 de Octubre de 2012, 15:16:35

Título: Modificar 3 cadenas en una funcion
Publicado por: KALLITOS en 15 de Octubre de 2012, 15:16:35
Hola a todos, la consulta es la siguiente tengo varios botones en pantalla que quiero que los textos puedan ser modificados por pantalla.

El codigo en C30 es el siguiente


Código: C
  1. void pantalla_boton(unsigned char boton,char *text1,char *text2,char *text3)
  2. {
  3. char                    nombre_1[15];
  4. char                    nombre_2[15];
  5. char                    nombre_3[15];
  6. unsigned short  cont_nombre_1,cont_nombre_2,cont_nombre_3;
  7.  
  8. memset(nombre_1,0,15);
  9. memset(nombre_2,0,15);
  10. memset(nombre_3,0,15);
  11.  
  12. strcpy(nombre_1,text1);
  13. strcpy(nombre_2,text2);
  14. strcpy(nombre_3,text3);
  15.  
  16. cont_nombre_1 = strlen(nombre_1);
  17. cont_nombre_2 = strlen(nombre_2);
  18. cont_nombre_3 = strlen(nombre_3);
  19.  
  20.  
  21. glcd_text57(x1_b+(x2_b-x1_b)/2-((cont_nombre_1)*tam_texto*5)/2-cont_nombre_1,y1_b+(y2_b-y1_b)/2-(tam_texto*7)/2,nombre_1,tam_texto,WHITE);///ESTO MUESTRA EL TEXTO1 INGRESADO, LO HACE BIEN
  22.  
  23.  
  24. }


Hasta alli todo va bien, el texto que ingreso es mostrado bien en la pantalla de modificacion, pero no se como cargar las modificaciones en las direcciones ingresadas, para que la funcion me devuelva el texto ya modificado.
Tener en cuenta que son 3 textos.

Me echan un cable porfa.


Saludos.
Título: Re: Modificar 3 cadenas en una funcion
Publicado por: KALLITOS en 15 de Octubre de 2012, 16:19:42
Estoy haciendo lo siguiente pero no me da buen resultado


Código: C
  1. char                    *dest1;
  2.  
  3. *dest1 = nombre_1;
  4.  
  5. for(c=0;c<15;c++)
  6.     {
  7.      *text1++ = *dest1++;
  8.     }//

Título: Re: Modificar 3 cadenas en una funcion
Publicado por: KALLITOS en 15 de Octubre de 2012, 16:31:31
Epa ya está, la solución fue esta:

Código: C
  1. for(c=0;c<15;c++)
  2.                         {
  3.                         *text1++ = nombre_1[c];
  4.                        
  5.                         }//


Saludos.