Duda variable

Iniciado por Bus_19, 29 Enero 2013, 19:46 PM

0 Miembros y 1 Visitante están viendo este tema.

Bus_19

Hola a todos. Tengo una duda con respecto al siguiente código. La cosa es que me sale como error de compilacion que las variables EuroaYen y EuroaDolar no se usa, cuando se puede ver claramente que están dentro del switch... no se muy bien que hacer... (soy novato)

Aquí dejo el código:
#include <stdio.h>

float EuroYen(float cantidadConvertir);
float EuroDolar(float cantidadConvertir);
float DolarYen(float cantidadConvertir);
float DolarEuro(float cantidadConvertir);
float YenDolar(float cantidadConvertir);
float YenEuro(float cantidadConvertir);

int main ()
{

int EleccionMoneda;
float cantidadConvertir, EuroaYen, EuroaDolar;

EuroaDolar=0;
EuroaYen=0;
cantidadConvertir=0;
EleccionMoneda=0;



printf("                 ***Conversor de monedas***\n\n");

printf("Elija la moneda cuyo valor quiera saber\n\n");
printf("*    1-Euro    *\n");
printf("*    2-Dolar   *\n");
printf("*    3-Yen     *\n");

scanf("%d",&EleccionMoneda);

switch(EleccionMoneda)
{
case 1:
printf("Introduzca la cantidad a convertir: \n");
scanf("%f",&cantidadConvertir);

EuroaYen=EuroYen(cantidadConvertir);
EuroaDolar=EuroDolar(cantidadConvertir);


break;

case 2:
printf("Introduzca la cantidad a convertir: \n");
scanf("%f",&cantidadConvertir);
break;

case 3:
printf("Introduzca la cantidad a convertir: \n");
scanf("%f",&cantidadConvertir);

break;

default: break;
}


getch();
return 0;

}


float EuroYen(float cantidadConvertir)
{
float Yenes=0;

Yenes=cantidadConvertir*25;

return Yenes;
}

float EuroDolar(float cantidadConvertir)

{
float Dolares=0;

Dolares=cantidadConvertir*1.34;

return Dolares;
}

float DolarYen(float cantidadConvertir)
{
float Yenes=0;

Yenes=cantidadConvertir*20;

return Yenes;
}

float DolarEuro(float cantidadConvertir)

{
float Euro=0;

Euro=cantidadConvertir*0.74;

return Euro;
}

float YenDolar(float cantidadConvertir)
{
float Dolares=0;

Dolares=cantidadConvertir*0.05;

return Dolares;
}

float YenEuro(float cantidadConvertir)
{
float Euros=0;

Euros=cantidadConvertir*0.04;

return Euros;
}

amchacon

No es un error, es una advertencia del compilador. Las advertencias son solo consejos, aclaraciones, ambiguedades...

La advertencia te indicará que has creado una variable y no la has usado. Y es verdad, has declarado una variable y no la has usado para nada (tan solo le has dado un valor)

Podrías imprimirla por pantalla por lo menos:


printf("La cantidad es %f \n",EuroaYen);
printf("La cantidad es %f",EuroaDolar);

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar

avesudra

#2
amchacon si le pasas al gcc al compilar este parámetro:
-Werror
Te salen esas advertencias como errores, aunque como tu dices al mostrarlas por la pantalla con printf, se van, pero queda una declaración implícita a getch que también da error. Así que no se si será la mejor solución pero esto es para desactivar eso(pasarlo al compilador como parámetro):
-Wno-error=switch
Y sustituye el getch por:
getchar();
O incluye:
#include <conio.h>//NO PORTABLE
¡Un saludo!
Regístrate en

Bus_19

Vale Vale estupendo, tienes toda la razón del mundo amchacon. Muchas gracias :D