Hola gente del foro, tengo un problema con un programa que al intentar construirlo me tire el error de que EOF no ha sido declarado :
Citar /home/alumno/Escritorio/Proyectos C++/practicas/libroCalificaciones.cpp||In member function 'void libroCalificaciones::recibirCalificaciones()':|
/home/alumno/Escritorio/Proyectos C++/practicas/libroCalificaciones.cpp|48|error: 'EOF' was not declared in this scope|
||=== Build finished: 1 errors, 0 warnings ===|
Les dejo la parte del código donde uso EOF, por las dudas trabajo en linux
void libroCalificaciones::recibirCalificaciones()
{
int calificacion;
cout <<"Escriba las calificaciones de letra." <<endl
<<"Escriba el caracter EOF para terminar la entrada." <<endl;
while ((calificacion= cin.get()) != EOF)
{
switch (calificacion)
{
case 'A':
case 'a':
aCuenta++;
break;
case 'B':
case 'b':
dCuenta++;
break;
case 'C':
case 'c':
cCuenta++;
break;
case 'D':
case 'd':
dCuenta++;
break;
case 'F':
case 'f':
fCuenta++;
break;
case '\t':
case '\n':
case ' ':
break;
default:
cout <<"Se introdujo una tecla de calificacion incorrecta."
<<" Escribe una nueva calificacion." <<endl;
break;
}
}
}
Disculoen las molestias, saludos! :)
Antes de utilizar la macro EOF debes incluir el encabezado <cstdio>.
Un saludo
por las dudas las lineas 18 y 28 son identicas no deberian ser distintas ?
Hola.
Una sugerencia, para reducir tu código:
...
#include <locale>
...
while ((calificacion= cin.get()) != EOF) {
switch (toupper(calificacion)) {
case 'A' :
aCuenta++;
break;
...
Saludos.
while ((calificacion= cin.get()) != ' ') o while ((calificacion= cin.get()) != ' ')
tambien creo
while ((calificacion= cin.get()) != '0x0A')
o
while ((calificacion= cin.get()) != '\n')
Cita de: rir3760 en 30 Agosto 2014, 18:01 PM
Antes de utilizar la macro EOF debes incluir el encabezado <cstdio>.
Un saludo
Muchas Gracias rir3760 por tu ayuda, pude sulocionar el problema, ;-)
Cita de: flony en 30 Agosto 2014, 18:01 PM
por las dudas las lineas 18 y 28 son identicas no deberian ser distintas ?
Si flony! muchas gracias! ;-)
Cita de: ecfisa en 30 Agosto 2014, 18:01 PM
Hola.
Una sugerencia, para..
Cita de: 6666 en 30 Agosto 2014, 18:01 PM
while ((calificacion= cin.get()) != ' ') o while ((calificacion= cin.get()) != ' ')
El código esta en un libro no lo programe yo :S
Saludos a todos ;D