14
2.3. Раздел за описание на константи
функцията, програмата или модула, където е написан. За по-подробно описание на
ефекта от използването му виж глава "UniPascal в детайли".
Пример: LABEL 777, stop, quit, 123;
2.3. Раздел за описание на константи
В раздела за описание на константи се дефинират идентификатори, които
по-късно се използват като имена на описваните от тях константи. В началото на раздела
се поставя ключовата дума const, а разделът в общия случай има следния вид:
ConstDeclaration =
'const' Ident '=' Constant ';' {
        Ident '=' Constant ';' }.
Constant =
SignedRealConst | SignedIntConst |
CharConst | StringConst | ConstExpression.
ConstExpression =
Expression.
От синтаксиса се вижда, че описанието на всяка константа се състои от
идентификатор, последван от знак за равенство, след който се записва стойността на
константата. По нататък в програмата при срещане на така описания идентификатор се
използва зададената при дефиницията му стойност. В дясната част на дефиницията може
да стои не само проста константа (цяла, реална и т.н.), но и константен израз (т.е. израз,
който може да се пресметне по време на компилация), в който могат да участвуват вече
описани други константи. Например:
const N =    100;
      N2 =  N * N;
      PI =   3.141596;
      Name = 'UniPascal';
Не се разрешава описването на константи, чиято стойност се определя чрез
самите тях, т.е. явно или неявно рекурсивни. Например:
const x = x + x;
или
const x = y;
      y = x + 1;
2.4. Раздел за описание на типове
В езика Pascal не само има дефинирани няколко стандартни типа данни, но
програмистът сам има възможност да дефинира свои собствени типове.
Когато се определи такъв собствен тип, обикновено той се именува чрез
въвеждане на идентификатор. Описанието на типовете се прави в отделна секция.
TypeDeclaration =
'type' Ident '=' Type ';' {
       Ident '=' Type ';' }.
Type =
TypeIdent | SimpleType | PointerType |
StructuredType.
TypeIdent =
Ident.
Строго погледнато, последното правило е излишно, но и в този случай, както и в
много други, то се използва, като се прави опит да се даде семантичен смисъл на
синтактичните правила.
В описанието на всеки нов тип могат да се използват само идентификатори на вече
описани типове (с изключение на указателите).
<<  <  GO  >  >>

Вернуться к началу сайта