UTNianos

Versión completa: [CONSULTA] errores en momento de compilacion
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hola, estoy viendo un resuelto, y yo veo 6 errores, cuando el resuelto solo me dice 2...

Llego a la conclusion, o que el resuelto esta mal, o que no comprendo cuales errores se encuentran en momento de compilacion.

Si alguno puede decirme ejemplos de errores detectados en momento de compilacion y otros q los encuentra luego (cuando? analisis semantico es fuera del momento de compilacion) se lo agradecerìa mucho!!

Saludos y gracias!
Podes subir el ejercicio?
no tengo la mas palida idea de lo qe decis jaja xD .. pero si hablamos de resueltos Yaoming
Son los resueltos de la catedra, no deberian estar mal...

void XX (int a)
{
int printf;
a=1;
double b;
return 4;
}

Para mi los errores son 2 (antes me confundi diciendo 4).
Return de un int cuando la funcion es de tipo void (la catedra coincide).
Se declara una variable con el nombre de una palabra reservada (lo q yo digo q esta mal).

La catedra dice: "double b, xq teine una sentencia antes".

No se cual compilador tendran en cuenta, para en los compiladores te deja declarar entre medio del cuerpo del programa.

Opiniones?

Gracias!
La catedra dice: "double b, xq teine una sentencia antes".
algo de c que me dijo la profe, vos no podes andar declarando variables donde se te ocurren. Van al principio

nono printf no es palabra reservada, la puede usar tranquilamente. Volumen 1, ahi estan las palabras reservadas
Q velocidad...

Encontre un apunte copado de cosas basicas x si a alguien le sirve: http://www.mhe.es/universidad/informatic...eral_2.pdf

(entre otras cosas estan las palabras reservadas).


Y lo del double b; lo voy a tomar como regla, pero eso es incorrecto, se puede declarar en cualquier lado. De ahi a q no sea una buena practica es otra cosa.

Gracias Caro!
Saludos
printf es una funcion, que esta definida en una biblioteca. Si la biblioteca no esta instanciada, podes usarla como variable.


Si, las declaraciones van arriba, estan en la BNF de C. Y las BNF sirven para verificar la sintaxis, no la semantica. Y el compilador evalua la sintaxis =P
Seguramente estés usando un compilador de C++. Ahí sí podés declarar variables en cualquier parte del programa, en C no, sólo al principio.
(23-07-2012 04:03)NathanDrake escribió: [ -> ]Seguramente estés usando un compilador de C++. Ahí sí podés declarar variables en cualquier parte del programa, en C no, sólo al principio.

sea dps del main o ni bien abris la llave de una funcion ahi pones las variables =). Chicos printf se puede usar por que no es reservada, aunque hubiera llamado a la funcion lo puede usar
"Y lo del double b; lo voy a tomar como regla, pero eso es incorrecto, se puede declarar en cualquier lado"


No. Tomalo como verdad. Declarar variables en cualquier lado es para c++ (la mayoria de los compiladores de C, en realidad compilan c++).

C "puro" solo lo permite al inicio de la función.
"No. Tomalo como verdad. Declarar variables en cualquier lado es para c++ (la mayoria de los compiladores de C, en realidad compilan c++).

C "puro" solo lo permite al inicio de la función. "


genial, no sabia.... estaba compilando con c++ en eclipse con minGW...

verdad entonces!

Gracias
(23-07-2012 11:02)CarooLina escribió: [ -> ]
(23-07-2012 04:03)NathanDrake escribió: [ -> ]Seguramente estés usando un compilador de C++. Ahí sí podés declarar variables en cualquier parte del programa, en C no, sólo al principio.

sea dps del main o ni bien abris la llave de una funcion ahi pones las variables =). Chicos printf se puede usar por que no es reservada, aunque hubiera llamado a la funcion lo puede usar

Sí Caro, me refería a eso. Pasa que de pajero no lo puse =P
URLs de referencia