Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Validar ingreso de datos, Existe otra manera...?

Estas en el tema de Validar ingreso de datos, Existe otra manera...? en el foro de C/C++ en Foros del Web. Hola a todos En la calculadora que estoy haciendo necesito validar que el ingreso de datos sea únicamente numérico, lo que deseo saber es si ...
  #1 (permalink)  
Antiguo 03/06/2008, 18:21
RoDaVi
Invitado
 
Mensajes: n/a
Puntos:
Validar ingreso de datos, Existe otra manera...?

Hola a todos
En la calculadora que estoy haciendo necesito validar
que el ingreso de datos sea únicamente numérico, lo
que deseo saber es si la única manera es por medio
de un bucle verificando carácter por carácter o existe
otra manera en C++.-

Desde ya muchas gracias por la ayuda que siempre
me brindan.-
Un gran abrazo
El autodidacta DanielC++
  #2 (permalink)  
Antiguo 04/06/2008, 15:47
Avatar de Mephisto  
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 184
Antigüedad: 18 años, 4 meses
Puntos: 3
Respuesta: Validar ingreso de datos, Existe otra manera...?

Pues yo no conozco una funcion que te valide toda la cadena, sino que como mencionas lo se hacer caracter por caracter con isdigit.

http://www.conclase.net/c/librerias/...hp?mac=isdigit
__________________
Saludos...

Todos somos sabios, solo que en diferentes disciplinas...
  #3 (permalink)  
Antiguo 04/06/2008, 17:08
 
Fecha de Ingreso: marzo-2008
Mensajes: 306
Antigüedad: 16 años, 1 mes
Puntos: 6
Respuesta: Validar ingreso de datos, Existe otra manera...?

Se puede hacer utilizando expresiones regulares con las funciones regcomp() y regexec().
Puedes ver un ejemplo aquí: http://publib.boulder.ibm.com/infoce...zan5mst205.htm
__________________
Pop & Rock Bands
Pop Music Stars
  #4 (permalink)  
Antiguo 04/06/2008, 18:11
RoDaVi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Validar ingreso de datos, Existe otra manera...?

Hola a todos
Mephisto, muchas gracias por el ejemplo.-
00siete, en cuanto a lo tuyo es interesante
porque desconocia que en C++ existian las expresiones
regulares, lamento muchisimo que la pag. este en ingles
pero bueno.-

Un gran abrazo para todos
El autodidacta DanielC++
  #5 (permalink)  
Antiguo 05/06/2008, 00:10
 
Fecha de Ingreso: marzo-2008
Mensajes: 306
Antigüedad: 16 años, 1 mes
Puntos: 6
Respuesta: Validar ingreso de datos, Existe otra manera...?

Puedes usar la siguiente función de C que emplea las funciones que te comentaba antes.

Código:
#include <stdio.h>  /* NULL */
#include <regex.h>  /* regcomp() */

/*=============
 * Comprueba si el string 'PpcString' cumple el filtro de 'PpcPattern".
 * return==1    SI lo cumple
 * return==0    NO lo cumple
 */
int FILTRO_Match( char * PpcString, char *PpcPattern )
{
  int LiRet;
  regex_t LsRegex;

  LiRet = regcomp( &LsRegex, PpcPattern, REG_NOSUB );
  if (LiRet != 0)
  {
    return 0; /* Error */
  }
  LiRet = regexec( &LsRegex, PpcString, (size_t)0, NULL, 0 );
  regfree( &LsRegex );
  if (LiRet != 0)
  {  
    return 0; /* Error o no cumple filtro */
  }
  return 1;
}
__________________
Pop & Rock Bands
Pop Music Stars
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:26.