Título: Ayuda con estructuras Publicado por: elle_hack en 12 Junio 2012, 04:22 am Gente del foro..
Tengo un problema, estoy codificando algo en c++ y cuando leo una entrada del teclado el programa queda con el cursor titilando y sin pasar a mostrar lo siguiente ni nada más, es como si entrara en algún bucle infinito o algo así, o como si estuviera ejecutando algo.. A continuacion meto parte del código.. //////////////////////////// char inve() { char temp[5]; char est='x'; vehi.id=i; cout<<"Ingrese los datos del vehiculo "<<vehi.id<<".."<<endl; //cin.getline(temp,5,'\n'); cout<<"Marca: "; cin.getline(vehi.marca,30,'\n'); cout<<"Modelo: "; //cin.getline(vehi.modelo,30,'\n'); cin.get(vehi.modelo,3); /*cout<<"Anho: "; cin>>vehi.anho; cin.getline(temp,5,'\n'); cout<<"Color: "; cin.getline(vehi.color,10,'\n'); cout<<"UA: "; cin>>vehi.ua; cin.getline(temp,5,'\n'); // limpiamos el buffer cout<<"Duenho: "; cin.getline(vehii].duenho_nom,30,'\n'); cout<<"Duenho DOCNro: "; cin>>vehi.duenho_doc; cin.getline(temp,5,'\n');*/ fflush(stdin); est = 'c'; return est; } /////////// El array vehi es de tipo vehiculo que es una estructura que esta definida como global, y cuando llega a esta linea <<cin.get(vehi.modelo,3);>> ahí congela el programa y ocurre lo que les mencione.. vale decir q a esta funcion la llamo del main().. Alguna ayuda me sería sumamente provechosa ya que mañana entrego esto..... Saludos..... Título: Re: Ayuda con estructuras Publicado por: x64core en 12 Junio 2012, 06:32 am decis el array... quiza si posteas la definicion de la estructura, obviamente debe ser un buffer no un char
Título: Re: Ayuda con estructuras Publicado por: elle_hack en 12 Junio 2012, 06:39 am la definicion de la estructura es--
struct vehiculo { int id; char marca[30]; char modelo[30]; int anho; char color[10]; int ua; // 1 - auto, 2 - camioneta, 3 - camion char duenho_nom[30]; int duenho_doc; char ni; int blo; int pos; }; ............ como q debe ser un buffer?estoy medio perdido en c, hace nose cuanto q ni lo miraba..... :huh: Título: Re: Ayuda con estructuras Publicado por: x64core en 12 Junio 2012, 07:02 am si, asi esta bien la declaracion del buffer... quiza si posteas todo el codigo :xD
me interesaria depurarlo :xD sinceramente siempre utilizo cin >>, o getline Título: Re: Ayuda con estructuras Publicado por: elle_hack en 12 Junio 2012, 07:15 am ahora logre solucionarlo, o algo asi digamosle.........
case 'i': { ualibresbn1=get_ualibres(bloquen1); if(ualibresbn1>0) { cout<<endl<<"-----------------------"<<endl; cout<<"Ingreso de vehiculo...."<<endl; cout<<"-----------------------"<<endl; esting=ingresavehiculo(); if(esting=='c') { estubi=ubicavehiculo(bloquen1); } else { cout<<"Hubo un ERROR al ingresar el vehículo.. No se lo pudo ubicar.."<<endl; } } else { ualibresbn2=get_ualibres(bloquen2); if(ualibresbn2>0) { cout<<"Ingreso de vehiculo...."<<endl; esting=ingresavehiculo(); if(esting=='c') { estubi=ubicavehiculo(bloquen2); } } else { cout<<"No hay lugares disponibles en ninguno de los bloques en ambos niveles"; system("pause"); } } break; } ///////////////////// lo que hice fue quitarle el if a el case que muestro ahi..... desde las lineas ualibresbn1=get_ualibres(bloquen1); if(ualibresbn1>0) tuve que comentar dejando sin comentar solo cout<<"Ingreso de vehiculo...."<<endl; esting=ingresavehiculo(); y ahi se soluciono el problema, exactamente aun nose cual sería el problema, espero no toparme de nuevo con el ya que las partes que comente luego las iré usando de a una otra vez..... Gracias por la ayuda y si tengo otro problema lo estare publicando acá.... :D |