Tokeny jazyka C++
Token je nejmenší prvek programu C++, který je smysluplný pro kompilátor.Analyzátor jazyka C++ rozpoznává tyto druhy tokenů: identifikátory, klíčová slova, literály, operátory, interpunkční znaky a jiné oddělovače.Proud těchto tokenů tvoří jednotku překladu.
Tokeny jsou odděleny obvykle "prázdnými znaky." Prázdný znak může být jeden nebo více:
Prázdné hodnoty
Vodorovné nebo svislé tabulátory
Nové řádky
Zakončení stránky
Komentáře
Následující jsou považovány za tokeny:
keywordidentifierconstantoperatorpunctuator
Následující jsou považovány za tokeny předzpracování:
header-nameidentifierpp-numbercharacter-constantstring-literaloperatorpunctuator každý neprázdný znak, který není ničím z výše uvedeného
Analyzátor oddělí tokeny ze vstupního datového proudu vytvořením nejdelšího možného tokenu použitím vstupních znaků při skenování zleva doprava.Zvažte tento fragment kódu:
a = i+++j;
Programátor, který kód vytvořil, mohl zamýšlet jeden z těchto dvou příkazů:
a = i + (++j)
a = (i++) + j
Vzhledem k tomu, že analyzátor vytvoří ze vstupního proudu nejdelší možný token, zvolí druhý výklad, díky čemuž tokeny budou i++, + a j.