A jelek precedencia szerinti csökkenő sorrendben:
^ | Hatványozás |
- | Negálás (unáris!) |
*, / | Szorzás, lebegőpontos osztás |
\ | Egészrészes osztás |
mod | Maradékos osztás |
+, - | Összeadás, kivonás |
Szintaxis: a^b
Operandusok:
Ha a negatív, akkor b egész kell, hogy legyen!
Visszatérési érték: Double vagy Double jellegű Variant. Ha a és b NULL, akkor az eredmény NULL.
Print 2 ^ 4 ”8”
Szintaxis: -a
Operandusok:
Visszatérési érték: Ugyanaz, mint a típusa. Kivétel: ha a EMPTY, akkor -a Long. Ha a NULL, akkor az eredmény NULL.
Print -3 ”-3”
Szintaxis: a*b
Operandusok:
Visszatérési érték: Az operandusok közül annak a típusa, amelyik az alábbi lista végéhez közelebb van: Integer, Long, Single, Currency, Double.
Kivételek:
Print 5*3 ”15”
Szintaxis: a/b
Operandusok:
Visszatérési érték: Double vagy Variant típusú Double. Ha a és b NULL, akkor az eredmény NULL.
Print 5/2 ”2.5”
Szintaxis: a\b
Operandusok:
Visszatérési érték: Integer vagy Long, vagy ezeknek Variant változata. Ha a és b NULL, akkor az eredmény NULL.
Print 5\2 ”2”
Szintaxis: a mod b
Operandusok:
Visszatérési érték: Integer vagy Long, vagy ezeknek Variant változata. Ha a és b NULL, akkor az eredmény NULL.
Print 5 mod 2 ”1”
Szintaxis: a + b
Operandusok:
Visszatérési érték: Az operandusok közül annak a típusa, amelyik az alábbi lista végéhez közelebb van: Integer, Long, Single, Double. Currency.
Kivételek:
Továbbá: Használható String-ek konkatenálására. Emiatt különböző típusú operandusok különböző típusú eredményeket adnak.
Egyik operandus | Másik operandus | Alkalmazott művelet |
---|---|---|
Numerikus | Numerikus | Összeadás |
Numerikus | String | HIBA |
Numerikus | Variant (nem NULL) | Összeadás |
String | Variant (nem NULL) | Konkatenáció |
String | String | Konkatenáció |
Bármi | Variant, ami EMPTY-t tartalmaz | Az első értékkel tér vissza |
Bármi | NULL | NULL-lal tér vissza |
Numerikus jellegű Variant | Numerikus jellegű Variant | Összeadás |
Numerikus jellegű Variant | String jellegű Variant | Ha a sztring átalakítható numerikussá, akkor összeadás, egyébként HIBA |
String jellegű Variant | String jellegű Variant | Konkatenáció |
Print 3 + 4 ”7” Print ”Egy” + ”ketto” ”Egyketto”
Szintaxis: a - b
Operandusok:
Visszatérési érték: Az operandusok közül annak a típusa, amelyik az alábbi lista végéhez közelebb van: Integer, Long, Single, Double, Currency.
Kivételek:
Print 3 + 4 ”7” Print ”Egy” + ”ketto” ”Egyketto”
A relációjelek mindegyike ugyanakkora precedenciával bír.
= | Egyenlő |
<>, >< | Nem egyenlő |
< | Kisebb, mint |
<=, =< | Kisebb, vagy egyenlő, mint |
> | Nagyobb, mint |
>=, => | Nagyobb, vagy egyenlő, mint |
Szintaxis: a op b
Operandusok:
Visszatérési érték: True (-1) vagy False (0), illetve ha legalább az egyik operandus NULL, akkor NULL.
Továbbá: Az operandusok alapján a relációjelek használhatók numerikus vagy String összehasonlításra.
Egyik operandus | Másik operandus | Alkalmazott művelet |
---|---|---|
Numerikus | Numerikus | Numerikus összehasonlítás |
Numerikus | Numerikus jellegű Variant, vagy numerikussá konvertálható String jellegű Variant | Numerikus összehasonlítás |
Numerikus | Numerikussá nem konvertálható String jellegű Variant | Hiba |
Numerikus | EMPTY-t tartalmazó Variant | Numerikus összehasonlítás, az EMPTY-t 0-vá konvertálva |
String | String | String összehasonlítás |
String | Variant (nem NULL) | String összehasonlítás |
EMPTY-t tartalmazó Variant | String összehasonlítás | |
String-et tartalmazó Variant | String-et tartalmazó Variant | String összehasonlítás |
EMPTY-t tartalmazó Variant | String jellegű Variant | String összehasonlítás, az EMPTY-t ""-gé konvertálva |
Numerikus jellegű Variant | Numerikus jellegű Variant | Numerikus összehasonlítás |
EMPTY-t tartalmazó Variant | Numerikus jellegű Variant | String összehasonlítás, az EMPTY-t 0-vá konvertálva |
Numerikus jellegű Variant | String-et tartalmazó Variant | Numerikus összehasonlítás, a numerikus kifejezés kisebb értékű, mint a String. |
EMPTY-t tartalmazó Variant | EMPTY-t tartalmazó Variant | Mindig egyenlőek |
Print 5 <= 7 ”True” Print (3-2) > (5*3) ”False”
Az alábbi operátorokat használhatjuk logikai érték kifejezésére vagy bitszintű műveletekhez. A jelek precedencia szerinti csökkenő sorrendben:
Not | Negáció |
And | És |
Or | Vagy |
Xor | Kizáró vagy |
Eqv | Egyenlőség |
Imp | Implikáció |
Szintaxis: a op b
Operandusok:
Visszatérési érték: Integer vagy Long, illetve ha valamelyik NULL, akkor NULL.
A következő típuskonverziós szabályok lépnek fel bitenkénti műveleteknél:
Print 6 And 12 '0110 and 1100 „4” '0100
Szintaxis: a op b
Operandusok:
Visszatérési érték: True vagy False, illetve ha valamelyik NULL, akkor NULL.
Print ((True And False) Or True) Imp False ”False” Print (True Eqv True) Xor (False Eqv True) ”True”
& | Konkatenáció |
Is, IsA | Objektum típusának ellenőrzése |
= | Értékadás |
Print „viz” & „vezetek” ”vizvezetek”