$Q: Kontrola přetečení

Z Delphi & Pascal (česká wiki)
(přesměrováno z $Q)
Skočit na navigaci Skočit na vyhledávání

Řídí generování kódu pro kontrolu přetečení (overflow).

 Syntaxe:       {$Q+} nebo {$Q-}
 Implicitně:    {$Q-}
 Typ:           Lokální
 Povel menu:    Options|Compiler|Overflow checking
Režim $Q+

V režimu $Q+ jsou určité operace celočíselné aritmetiky kontrolovány, zda při nich nedošlo k přetečení, jako např.:

+, -, * Abs, Sqr, Succ, a Pred.

Za kódem každé z těchto operací následuje doplňkový kód, který ověřuje, zda je výsledek v podporovaném rozsahu. Pokud k přetečení dojde, program se ukončí a zobrazí hlášení o běhové chybě.


Přepínač {$Q} nemá vliv na standardní procedury Inc a Dec. Tyto procedury nejsou nikdy kontrolovány na přetečení. Přepínač $Q se obvykle používá spolu s přepínačem $R. Povolení kontroly přetečení zpomalí program a o něco ho zvětší, takže {$Q+} používejte pouze pro ladění.

Režim $Q-

V režimu $Q- není kontrola přetečení prováděna.

Viz také
$R