Programación General > C/C++
Re: sobre programacion C
adocrates:
Puede que me quede corto con la explicacion, pero la idea es escribir una NUEVA funcion para input de datos, USANDO getch(), que captura codigos de teclas especiales y teclas normales... OK ?
El nombre de la funcion la pones tu, (NO sabia que existia YA una funcion getstr), entonces pongamosle GetString(), que tiene 4 parametros : El buffer donde queda la data, un largo maximo, y para posicionamiento, una columna y una fila :
--- Código: Text ---int GetString(char *buf, int len, int col, int row) Quise darte a entender, con los [...] que podias agregar mas parametros, como una mascara de input, para por ejemplo, solo aceptar numeros, eso lo dejo a tu criterio y necesidad.
Ahora, para filtrar las teclas especiales, lease de funciones, flechas y control, declaramos un arreglo long con los codigos de dichas teclas, QUE ESTAN definidos en el .h, ejemplo, KEY_F(3) [yo le puse F3], KEY_ENTER, y todas las que quieras que interrumpan el input, o para que puedas controlar alguna accion asociada a esa tecla, entendebu?
En el ciclo for, filtramos lo que leimos en la var c, si es tecla especial, retorna el codigo de la tecla, si no es, verificamos que sea una caracter alfanumerico (A-z,0-9), si es asi lo asignamos al buffer y aumentamos el indice y en la siguiente posicion asignamos 0 que es el caracter de fin de string. Entretanto controlamos que el indice no sobrepase el largo maximo.
Te aconsejo que leas o traduzcas bien los mensajes de error y warnings. Agrega a la compilacion la opcion -Wall y -O3, elimina TODOS los warning y SIEMPRE estaras seguro que tu aplicacion esta Wendy...
Salu2.
PD: Este foro tiene un chat vacio, si quieres, avisame una hora y parlamentamos live...
No estaria demas que publicaras el codigo para cachurearlo...:D
wimogan:
Adocrates:
Recibi tu ultima respuesta la analice y crei entender lo que me decias, por lo que empece un nuevo codigo mas pequeño parecido al codigo original del ejecutable que te mande y al parecer no entendi, porque no obtuve los resultados.
Sorry!.
Bueno, en fin aqui te envio ambos codigos, el original de mi programa y el de prueba que incluye la idea que me diste, para que lo analices y lo modifiques tu mismo y me puedas ayudar.
El archivo linux.c lo compilas con "-lncurses -lform" y el archivo ncurses.c lo compilas con "-lncurses".
Nota: En el original "linux.c" hay lineas que pueden estar demas y que se podrian eliminar si logro resolver el problema de la lectura. Revisalo tu mismo y veras todo lo que he tenido que hacer para lograr algunas cosas y te daras cuenta de a que me refiero.
Na' espero tu respuesta.
Ariel.
Modifique este mensaje y borre el codigo del programa porque creo que me confundi de codigo al enviarlo, ya que no estaba posteado el mas actual, el cual luego posteare para ver que me dices y en que me puedes ayudar. "Me interesa que me ayudes con ese".
Por ahora solo deje algo sencillo usando la idea que me diste!.
Ariel.
wimogan:
Aqui va el segundo archivo:
Ah, quiero que el primero lo revises bien y me des algunas recomendaciones y mejoras que consideres de lugar imaginandote que vas a ser un usuario de ese programita, que cosas te gustaria que tuviera y en cuanto al codigo, cuales mejoras sugieres.
Navegación
[*] Página Anterior
Ir a la versión completa