¡Nuevo!  por fin disponible la versión 5 de OrganiZATOR
Descubre un nuevo concepto en el manejo de la información.
La mejor ayuda para sobrevivir en la moderna jungla de datos la tienes aquí.

Curso C++

[Home]  [Inicio]  [Índice]


3.2   Tokens

§1  Sinopsis

El tratar de la estructura lógica de un programa ( 1.3.1) se señaló que tokens son los elementos en que el preprocesado desmenuza el código fuente. En un lenguaje de programación, los tokens son el equivalente a las palabras y signos de puntuación en el lenguaje natural escrito. Los tokens están separados por elementos de separación que reciben el nombre genérico de separadores ( 1.4).

Comprenden los siguientes tipos de elementos (podríamos considerar que el lenguaje computacional C++ tiene las siguientes clases de "palabras"):

  • Palabras clave ("keywords"). C++ dispone de un conjunto relativamente extenso de palabras clave, señaladas en ( 3.2.1).

  • Identificadores. Su número puede ser virtualmente infinito; dentro de ciertas normas el programador es libre de elegir los que mejor se ajusten a sus necesidades.( 3.2.2).

  • Constantes. Existen varias clases, cuyos detalles se exponen en las páginas siguientes ( 3.2.3)

  • operadores  ( 4.9)

  • signos de puntuación, también llamados puntuadores  ( 3.2.6).


En ocasiones, los operadores y signos de puntuación comparten la misma representación escrita. En estos casos, el sentido debe deducirse del contexto y por la forma en que están agrupados los diversos signos.

El conjunto de símbolos; grupos de símbolos, y palabras utilizados en C++ como operadores y/o puntuadores, es el siguiente (los operadores se han señalado en azul):

{ } [ ] # ## ( ) \
<: :> <% %> %: %:%: ; : ...
" ' ? :: . .*      
+ - * / % ^ & | ~
! = < > += -= *= /= %=
^= &= |= << >> >>= <<= == !=
<= >= && || ++ -- , ->* ->
and and_eq bitand bitor compl not not_eq or or_eq
xor xor_eq ( ) [ ] new delete new[ ] delete[ ]


Una vez entregado el fuente al compilador, es precisamente el analizador sintáctico ("parser") el encargado de es identificar los tokens.  Por ejemplo, la sentencia

int i; float f;

es descompuesta por el "parser" en los siguientes tokens:

int palabra clave
i identificador
; puntuador
float palabra clave
f identificador
; puntuador