Hola y bienvenidos.
En este vídeo quiero explicarte qué son los errores del compilador.
Hasta aquí.
Bien.
Hemos escrito algo de código y nos hemos dado cuenta de que en la ventana de salida de compilación, emitimos un comando
de compilación y sabemos cuando tenemos errores.
Bien.
Normalmente hay una bonita descripción que dice que hay un error en tu código, pero ¿qué significa eso
exactamente?
Así que cuando se escribe código para una programación, lenguajes, lenguajes de programación son muy, muy estricto.
Tienen normas.
Y hay que seguir esas reglas para que un programa sea ejecutable.
Un compilador comprobará realmente la sintaxis del código.
Y si es correcto y no hay errores semánticos, generará a partir del código fuente, código de tipo lenguaje máquina,
y podrás ejecutar un programa.
Así que hay que seguir unas normas muy detalladas.
Así que hay que ser muy detallista.
Así pues, los errores del compilador pueden ser de dos tipos.
Puede tratarse de un error sintáctico o semántico.
Un error de sintaxis es cuando tienes algo mal en la estructura del código, no estás
siguiendo las reglas del lenguaje en cuanto a su sintaxis, ¿verdad?
No estás poniendo los paréntesis en el espacio correcto.
No estás añadiendo todas tus afirmaciones con punto y coma.
No estás escribiendo mal las palabras clave.
Todos estos son ejemplos comunes.
El punto y coma es muy común cuando se empieza.
Así que si declaras una variable y la asignas a cinco pero no tienes ese punto y coma al final,
eso es un error de sintaxis.
Algo falla en esa estructura.
Lo mismo que si fueras a usar una sentencia printf y dices una sentencia printf dentro de comillas dobles,
pero te olvidas del final, comillas dobles.
Es un error de sintaxis.
Y entonces algo está mal con esa estructura en el compilador típicamente cuando escanea tu código
fuente y encuentra este error, usualmente dará un error descriptivo que puede apuntarte en la dirección correcta y también usualmente
da el número de línea.
Y ya lo hemos visto en vídeos anteriores.
El otro tipo de error que puede detectar el compilador es un error semántico.
No siempre detecta los errores semánticos si son errores lógicos, pero los semánticos suelen significar que algo
falla en el significado.
La intención del programa.
Así, por ejemplo, si tuvieras que añadir dos variables A y B, pero esas variables fueran de distinto
tipo y no tuviera sentido, ¿no?
No tiene sentido sumar A y B.
A veces, el compilador puede detectar estos errores semánticos.
Otros errores semánticos tienen que ver con la lógica y vamos a hablar de ellos.
Y el compilador no siempre las encuentra.
La estructura era correcta y todo estaba bien con la estructura, pero lógicamente algo era incorrecto.
Hay un error en la lógica del código.
Así que cuando se piensa en los errores semánticos, lo que el compilador puede atrapar, es más
tiene que ver con la captura de tipo y y cosas que no se supone que hacer con, con diferentes reglas del lenguaje
en relación con los tipos de variables.
Y ahora echemos un vistazo a la luz del código para ver algunos ejemplos comunes de algunos errores sintácticos y semánticos en el
lenguaje de programación C.
Así que aquí estamos en la luz de código con una simple aplicación de tipo Hola mundo.
Este código se genera a partir de la configuración del proyecto.
Si lo has guardado como plantilla.
Un código muy sencillo, ¿verdad?
Y cuando compiles este archivo, te dirá si tienes o no errores de sintaxis.
Puedes volver a hacer clic con el botón derecho y decir compilar.
Y ahora mismo no tenemos ningún error, ¿verdad?
Pero sintácticamente seguimos todas las reglas.
Pero la sintaxis incluye, de nuevo, toda la estructura del código.
Así que si no tienes un punto y coma o si no tienes un símbolo de libra antes de un include y tratas de
compilarlo.
Usted va a ver que hay un error y por lo general el error del compilador error tiene algún tipo de significado.
Ahora, a medida que escribas más y más código y adquieras más y más práctica, estos compiladores no serán tan
obtusos.
No van a ser tan poco descriptivos que te resulten familiares como, por ejemplo,
este error dice que tenemos un error en la línea uno, ¿verdad?
Y así está bien.
Puedes hacer doble clic.
Irá a ese error, pero dice que se espera igual sabe punto y coma.
En realidad no te dice qué es lo que va mal.
Ya sabes, a través de la práctica de programación te darás cuenta, oh, olvidé el símbolo de libra.
Así que algunos errores del compilador no son tan descriptivos como te gustaría si eres nuevo en programación.
Así que añades eso, añades ese símbolo de libra, recompilas y listo.
Si escribes mal la i o estándar a veces no será capaz de encontrarla.
Así que lo guardas y recompilas y ves un error que dice un poco más descriptivo.
¿Verdad?
No such file or directory Stdio. ...eso te dice algo así como: "Quizá lo escribiste mal".
Así que las faltas de ortografía son errores comunes.
Ya sabes, no poner las cosas en la perspectiva adecuada en términos de paréntesis desajustados.
Si olvidas un paréntesis, de nuevo, recompilas.
Veamos qué aspecto tiene ese error.
De nuevo, no es muy descriptivo.
Está diciendo, ya sabes, hay básicamente un paréntesis antes de la llave rizada final porque no sabe que piensa
que tal vez este paréntesis derecho va a terminar en algún lugar aquí abajo.
No siempre puede decirte exactamente lo que está pasando.
Así que los paréntesis y las llaves que faltan a veces no son tan descriptivos.
Pero si te falta algo como un punto y coma, es bastante sencillo.
Ese error de compilación te dice exactamente lo que está pasando.
El punto y coma esperado antes del retorno te indica dónde debes ponerlo.
Así que puedes hacer doble clic en eso, poner un punto y coma si te falta una comilla doble y recompilar.
¿Verdad?
Ahora ves algo que dice básicamente falta, terminando comilla doble.
Y de nuevo, como que te señala donde ocurre la primera cita y te da múltiples errores,
Correcto, aunque en realidad sólo tienes uno.
Así que ya tienes esa doble comilla y listo.
Ahora, este main está diciendo que necesitas devolver un int.
¿Y si en realidad intentara devolver algo como dentro de comillas dobles?
De nuevo, no estás siguiendo esa estructura del lenguaje y te dice básicamente que estás devolviendo un puntero
de carácter de un tipo de función.
De nuevo, estos errores de compilación pueden no tener sentido para ti ahora mismo, pero a medida
que escribas más y más código, tendrán más sentido.
Pero se trata de seguir esa estructura.
Ahora, si intentas hacer cosas que tengan sentido sintácticamente, pero el significado no es correcto.
Así, por ejemplo, digamos que hacemos una impresión F y luego tratamos de hacer una operación aritmética
como dividir por ocho o dividir por siete.
Lo guardamos y lo compilamos y ahora vemos más un error semántico donde tenemos un símbolo de división después de las comillas
dobles.
Usted sabe donde realmente estaba esperando Punto y coma C Principalmente vamos a encontrar errores de sintaxis, errores semánticos.
El significado del código suele tener que ver con la lógica.
No se encuentra tanto errores semánticos ocurren más en un lenguaje como C más cuando se está utilizando.
Objetos.
Así que esté atento a los errores de sintaxis del compilador.
Cosas comunes mal deletreo mal uso de.
Palabras clave no terminar tus paréntesis cuando los estás empezando bloques de código cuando no tienes
el bloque final y el bloque inicial Y puedes tener múltiples errores, ¿verdad?
Digamos que tenemos Hola mundo.
Nos falta un punto y coma.
Devolvemos una cadena.
Nos falta un soporte y lo construimos.
Y este es un programa bastante pequeño.
Pero cuando intentamos compilarlo ahora, vemos múltiples errores, ¿verdad?
Dos errores.
Y es un poco complicado, como, ¿por dónde empiezo?
Normalmente lo que harás es solucionar el primer error porque a veces un error puede causar más errores.
Así que siempre es mejor mirar el error del compilador en la parte superior y corregirlo primero.
Así que quieres arreglar el de la línea cinco, ¿verdad?
Y entonces es posible que desee corregir y luego volver a compilar y luego tal vez arreglar el de la línea seis después de eso.
Y ahora dice Jason.
Así que ahora puedes decir que devuelva cero, pero siempre arregla ese primer error antes de arreglar los errores subsiguientes
porque uno puede estar causando el otro.
Y por cierto, siempre vamos a tener errores en nuestro código.
Incluso los programadores más avezados vamos a tener errores de sintaxis.
Y por eso es habitual que haya errores.
Lo realmente importante es entender los mensajes que provienen del compilador para saber
cómo corregirlos.
Y de nuevo, eso vendrá con la práctica.
Hablaremos más sobre compiladores, compiladores comunes en futuros vídeos, pero intenta asegurarte de
que sigues la estructura del lenguaje a medida que lo aprendes, los lenguajes sintácticos y demás.
En las próximas conferencias hablaremos de cómo podemos tener distintos tipos de errores.
He mencionado errores lógicos.
También podemos hablar un poco de las advertencias.
También hablaremos de los errores del enlazador y de los errores en tiempo de ejecución.
Gracias, señor.