Ver Mensaje Individual
  #7 (permalink)  
Antiguo 05/06/2015, 00:35
Srgy
 
Fecha de Ingreso: junio-2015
Ubicación: Murcia
Mensajes: 6
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Programa para consultar datos struct

Gracias, eso me clarifica bastante, si bien tengo aún las siguientes dudas:

- ¿Que diferencias tengo entre declarar la variable "localidad" como char o char*. Lo digo porque sustituyendo...

Código:
if((localidad[z] == lista[i].ciudad[z])||(localidad[z] == lista[i].ciudad2[z]))
teniendo declarada como char, por la función srtcmp me da error en compilación. Si cambio la declaración a char* entonces me da error la lectura con el

Código:
gets(localidad);


Otra cosa es que cuando hago la limpieza del búfer

Código:
cin.ignore(256,'\n');
hay que presionar dos veces enter para que tome el valor, lo cual puede llevar al usuario a no saber esto y creer que el programa se ha "colgado".

Código:
   system("cls");          
   cout<<"Introduce nombre de localidad\n";
   cin.ignore(256,'\n');
   gets(localidad);
Así, al abrir el programa, en la primera selección del switch (1 o 2), tengo que hacer lo siguiente...

-pulso 1 (por ejemplo) y enter . El programa no hace nada.
-Vuelvo a pulsar 1 y enter. El programa entra en el case 1.

He tenido, por tanto, que hacer dos veces esa operación de selección, lo cual no deja de ser algo raro.

Respecto a lo de las clases, aún no he entrado en eso. Me está costando algo entender el concepto de clase de C++. Ví algo de C en su día, y esto me pilla de nuevas. Pero vamos, que asumo que este programa sería mucho más sencillo de realizar mediante el uso de clases. Todo llegará.

Disculpa por el asedio de dudas y de nuevo mil gracias, con estos consejos voy empezando a tener claras algunas cosas.

Saludos.