C/Visual C - duda de C con variables

 
Vista:

duda de C con variables

Publicado por poker (1 intervención) el 09/10/2003 23:36:30
Hace muy poco que estoy estudiando C, y empeze con un emulador de Router. El problema lo tengo en esta fraccion de codigo, el scanf esta esperando la entrada de dos variables, pero si yo quiero salir tengo que introducir ´salir´ y otra palabra, cuando deberia ser solo ´salir´. ¿como lo puedo solucionar?.

printf("\n>");
scanf("%s %s", vcom, vip);
while (strcmp(vcom, "salir")){

Desde ya agradezco a quie me pueda ayudar....
Gracias.
***Poker***
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:duda de C con variables

Publicado por fernando.gomez (1603 intervenciones) el 10/10/2003 01:37:32
Pues sí, porque no sale del bucle hasta que el while compara. El proceso que sigue es este:

1. scanf("%s %s", vcom, vip);
+ Pide la primera variable;
+ Pide la segunda variable;
2. while (strcmp(vcom, "salir")){
+ Hace la comparación y sale.

Lo que puedes hacer es hacerlo por separado

scanf("%s", vcom);
if (!strcmp(vcom, "salir")) break; // o continue, como quieras
scanf("%s", vip);
// etc.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:duda de C con variables

Publicado por CHRISTIAN EOY (69 intervenciones) el 10/10/2003 06:27:44
Te digo lo q se hace siempre en estos casos y q es lo mejor. Teles q leer una linea y usar un interprete de comandos. Esto es, una funcion q t separe las palabras y los comandos, para despues saber q funcion llamar. Otra cosa q creo q t va a servir es, si estas programando con C++, usar las funciones cin y cout., las dos dentro de la libreria iostream.h
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar