C/Visual C - Bucle do

 
Vista:
sin imagen de perfil
Val: 14
Ha aumentado su posición en 2 puestos en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

Bucle do

Publicado por sdfsd (7 intervenciones) el 15/10/2017 15:01:51
TP.c:182:14: warning: comparison between pointer and integer
}while (respuesta == "no");
^~
TP.c:182:14: warning: comparison with string literal results in unspecified behavior

La compilación ha terminado con éxito.

respuesta esta declarada como char, quiero saber porque me sale ese error y si a pesar de que compile puede causar algún problema en el programa.

1
2
3
4
5
6
7
8
9
10
11
do
{
do
{
...
}while();
 
printf ("Volver a ejecutar si/no\n");
scanf ("%s",&respuesta);
 
}while (respuesta == "no");
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
sin imagen de perfil
Val: 72
Ha mantenido su posición en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

Bucle do

Publicado por juanki (31 intervenciones) el 15/10/2017 21:11:04
Hola

En C las cadenas no se comparan con ==, si no con strcmp.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 185
Bronce
Ha aumentado 1 puesto en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

Bucle do

Publicado por carlos (95 intervenciones) el 19/10/2017 11:24:21
el (while (respuesta == "no") esta mal no se pueden comparar una variable con un texto ya que compararias la direccion de memoria de las dos si son iguales

tienes que usar strcmp(original, a comparar)==0 //si quieres que la comparacion sea si son iguales

Si es 0 son iguales

Espero que te sirva
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