2011-09-06 18 views
13

Actualmente estoy en la Lección 9 en "Aprende Ruby por las malas".¿Qué es el "error de sintaxis, tCONSTANTE inesperado" error en Ruby?

He tipeado el número de línea 6 exactamente como la forma en que se lo indican, pero sigo recibiendo un error durante la ejecución.

Dice:

Syntax error, unexpected tCONSTANT, expecting $end 
puts " Here^are the days : ", days 
+0

Esto puede suceder en IRB (ruby interactivo) incluso si presiono Ctrl-C varias veces. Me parece que simplemente salgo de IRB si presiono esto en IRB. –

Respuesta

20

Ha olvidado cerrar una cadena en una línea anterior. Aquí está el problema se reproduce:

[email protected] ~ ⸩ ruby  
days = "abc 
puts "Here are the days" 
-:2: syntax error, unexpected tCONSTANT, expecting $end 
puts "Here are the days" 
     ^

Es el tratamiento de la doble cotización antes de la palabra "aquí" como la cotización de cierre de la cadena en la línea anterior, y luego se pregunta por qué estás usando una constante llamada aquí (token comenzando con letra mayúscula).

+1

Impresionante, gracias @paul –

+0

¡Gracias, me salvaste! –

5

El mensaje de error significa que el analizador de rubí se encontró con una constante (es decir, un identificador de comenzar con una letra mayúscula) en el que no se esperaba una (específicamente el analizador espera que el archivo termine en ese punto).

Como el código que ha mostrado ni siquiera contiene una constante, es probable que el problema esté causado por otra parte de su código.

Cuestiones relacionadas