¿Cómo evitar pasar a una siguiente opción cuando no hayan ingresado datos?

Iniciado por Juancho25, 2 Noviembre 2012, 06:31 AM

0 Miembros y 1 Visitante están viendo este tema.

Juancho25

Tengo un programa en el cual se van ingresando datos como por ejemplo nombre, apellidos, fecha de nacimiento, etc, pero tengo un problema, necesito que cuando no se hayan ingresado datos no se pase a la siguiente opción cuando se presione la tecla "enter", ya que esto me sucede con los tipo char y me deja el espacio vacío al momento de mostrar los datos ingresado. Espero y me haya explicado bien y alguien me pueda ayudar.

Caster

Con una condicion if o con un bucle o algo asi para detectar el fallo, si posteas el codigo seria mas facil.

Saludos

Juancho25

Por ejemplo este código:

cout<<"Ingresa tu nombre";
gets(nombre);
cout<<"Ingresa tus apellidos";
gets(apellidos);


Lo que yo digo es que cada vez que pase por un gets no se pase a la siguiente opción cuando no se ha ingresado nada y se presiona la tecla enter, osea, que no quede el espacio vacío.

NeoB

Lo he puesto en un "c++" un poco chapucero por que a mi me va el C xD pero creo que será basicamente lo mismo.

#include <iostream>
#include <stdio.h>
using namespace std;

int main()
{
char nombre[10];
char apellidos[20];
cout<<"Ingresa tu nombre: ";
while ( nombre[1] == NULL )
{
fgets(nombre, 10, stdin);
}
cout<<"Ingresa tus apellidos: ";
while ( apellidos[1] == NULL )
{
fgets(apellidos, 10, stdin);
}
return 0;
}