elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda con estructuras
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con estructuras  (Leído 3,189 veces)
elle_hack

Desconectado Desconectado

Mensajes: 3



Ver Perfil
Ayuda con estructuras
« 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.....


En línea

x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Ayuda con estructuras
« Respuesta #1 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


En línea

elle_hack

Desconectado Desconectado

Mensajes: 3



Ver Perfil
Re: Ayuda con estructuras
« Respuesta #2 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:
En línea

x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Ayuda con estructuras
« Respuesta #3 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
« Última modificación: 12 Junio 2012, 07:04 am por RHL » En línea

elle_hack

Desconectado Desconectado

Mensajes: 3



Ver Perfil
Re: Ayuda con estructuras
« Respuesta #4 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
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda. Problema con arreglo de estructuras.
Programación C/C++
Gorka82 1 3,359 Último mensaje 11 Julio 2010, 06:26 am
por Littlehorse
ayuda con estructuras
Programación C/C++
chechopineda 8 5,146 Último mensaje 16 Agosto 2010, 04:19 am
por chechopineda
Ayuda con las estructuras de los juegos
Ingeniería Inversa
j3xh0 3 3,266 Último mensaje 29 Agosto 2010, 00:20 am
por Castiblanco
Ayuda con estructuras « 1 2 »
Programación C/C++
eltoffer 15 8,221 Último mensaje 5 Febrero 2011, 23:53 pm
por Garfield07
Ayuda con matriz dinámica de estructuras
Programación C/C++
darklatios2006 4 3,241 Último mensaje 21 Marzo 2013, 19:58 pm
por amchacon
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines