10
1.6. Символни низове
Целочислените константи трябва да бъдат в интервала от 
-
2147483648 до
2147483647 или, ако са в шестнадесетичен вид, от $0 до $FFFFFFFF.
За разлика от стандартния Pascal в UniPascal се допуска използване на символа за
подчертаване вътре в числата. Това е направено за по-лесно възприемане на дългите
числа. Например числата 1000000000 и 1_000_000_000 са еквивалентни за
компилатора, но човек възприема значително по-лесно второто.
Синтаксис:
HexDigit =
Digit | 'A' | 'B' | 'C' | 'D' | 'E' | 'F' |
        'a' | 'b' | 'c' | 'd' | 'e' | 'f'.
Decimal =
Digit { Digit | '_' }.
IntConst =
Decimal | ('$' HexDigit { HexDigit | '_' }).
Sign =
[ '+' | '-'].
ScaleFactor =
('E' | 'e') Sign Decimal.
RealConstant =
Decimal (('.' Decimal [ScaleFactor]) |
         (['.' Decimal] ScaleFactor)).
SignedRealConst =
Sign RealConstant.
SignedIntConst =
Sign IntConst.
Примери:
Цели числа:
0, 1, 259, $0, $f, $7fff, $EF5
Реални числа:
0.0, 1.0, 259.0, 0.0005, 1.0E-23, 3.141596е1.
1.6. Символни низове
Символният низ (или просто низ) е последователност от няколко (нула или повече)
символа (букви) от разширения ASCII код. При записването му той се огражда с кавички.
Могат да бъдат използвани единични (') или двойни кавички (").
Например: 
'Пример 1' 
"Пример 2".
Ако е необходимо самият символ за кавичка, с който е заграден низът, да се
постави в него, то той трябва да бъде повторен. Ако низът е ограден с двойни кавички,
то в него могат да се използват единичните без да трябва да се повтарят, и обратното.
Например:
"В този низ има единична (') кавичка", 
'А в този има двойна (") кавичка'. 
"Тук двойната кавичка "" трябва да се повтори"
Един частен случай на низовете е низ с дължина един символ. В този случай той
може да бъде записан и по следния начин: #n, където n е ASCII кода на символа.
Например: 'Y' = #89 = #$59.
Последователност от низове се обединява и обработва от компилатора като един
низ. Например: "UniPascal" = "Uni" 'Pascal' = #85'ni'#80'ascal'
Общият вид на символните константи е:
CharConst =
'"' ASCII_8 '"'| "'" ASCII_8 "'"|
'#'IntConst.
StringConst = { '"' { ASCII_8 } '"' |
 "'" { ASCII_8 } "'" |
<<  <  GO  >  >>

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