$H
Deutsch · English
Back to local compiler directives.
The $H or $LONGSTRINGS local compiler directives have the same meaning and determine whether the compiler interprets the reserved word String as an AnsiString.
The $LONGSTRINGS directive uses the ON and OFF switches.
The $H directive uses the + and - switches.
The default is {$H-}. The reserved word String is a ShortString.
The compiler mode {$MODE DELPHI} implies a {$H+} statement, all other modes switch it off. As a result, you should always put {$H+} after a mode directive.
Example:
// String is an AnsiString
{$H+}
// String is an AnsiString
{$LONGSTRINGS ON}
// Default; String is a ShortString
{$H-}
// Default; String is a ShortString
{$LongStrings OFF}The {$H} or {$LONGSTRINGS} directive corresponds to the -Sh command line option.
From the Free Pascal wiki, page "$H", as it stood on 2020-06-23 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.
Talk about this page
Nobody has opened a bench for this page yet. Sign in to open one.
