Hola.
Cada vez que intento ejecutar este código me sale error:
int dia, mes, dig, res;
int ano, ano2, ano3, ano4;
dia=GetDlgItemInt(hDlg, IDC_EDIT1, NULL, FALSE);
mes=GetDlgItemInt(hDlg, IDC_EDIT3, NULL, FALSE);
ano=GetDlgItemInt(hDlg, IDC_EDIT2, NULL, FALSE);
ano2=((ano)%(100));
ano3=((ano2)/(4));
ano4=((ano2)%(4));
switch(mes)
{
case 1:
dig=0;
break;
case 2:
dig=3;
break;
case 3:
dig=3;
break;
case 4:
dig=6;
break;
case 5:
dig=1;
break;
case 6:
dig=4;
break;
case 7:
dig=6;
break;
case 8:
dig=2;
break;
case 9:
dig=5;
break;
case 10:
dig=0;
break;
case 11:
dig=3;
break;
case 12:
dig=5;
break;
}
res=((dia+dig+ano2+ano3)%7);
En concreto el error es:
"Run-Time Check Failure #3 - The variable 'dig' is being used without being initialized."
El código me compila bien, pero mientras está en ejecución no para de salirme continuamente ese error.
A ver si me podéis ayudar ;)
Creo que el mismo error te de lo dice: No haz Declarado/Inicializado la variable 'dig'
Fa me parece raro o se muy poco, prueba poniendo donde declaras la variable dig poniendole ya un valor 0 inicial ya q lo q entiendo q dice el error es q La variable "dig" esta siendo usada sin ser iniciada, asique si haces un int dig = 0: no se puede quejar xD
Me temo que posiblemente no se esté realizando la conversión correctamente del texto de tu dialog box a el entero mes.
Prueba a poner un case default en el switch donde inicialices dig a algún valor, y si el error deja de surgir, entonces, tienes acotado entre la conversión de "GetDlgItemInt" y el switch.
Quizá quieras revisar la referencia de GetDlgItemInt (http://msdn.microsoft.com/en-us/library/ms645485(v=vs.85).aspx)
Akai, me parece q no es eso, fijate lo q le puso el error
Y a mi si me lo parece. No está realizando la comprobación de error puesto que pone el flag de errores a NULL, tampoco comprueba mes, y no tiene un case default. Conclusión: posible caso que se esté dando: mala conversión y que no se de ningún case de switch tal cual está puesto.
A claro ya entendi si, tendria q poner un default si para darse cuenta el error