&/pt
English · Français · Português · Suomi · Русский
&
Em ASCII, o caractere de código decimal 38 (ou em $26) é, por definição, & (chamado de “E comercial”).
Pascal
Base octal
Em Pascal o & denota um número em base octal.
program messageNo(input, output, stderr);
uses
baseUnix;
begin
// withdraw group write access to current terminal
// equivalent to invoking: mesg n
fpChmod('/dev/stdin', &0600);
end.In an octal base only the characters 0 through and including 7 are allowed. An optional sign is specified in front of the &.
As a passing remark, in a production program the number in the above example is better written as
fpChmod('/dev/stdin', S_IRUSR or S_IWUSR);since it is more meaningful than having a raw number. Pascal is a high-level language. Use this advantage. Write what you mean, not what in fact the computer does.
Note: Literais numéricos em octal não são suportados pelos modos {$mode Delphi} e {$mode TP}.
Caractere de escape
FreePascal retroactively declared some new reserved words. In order of being capable of compiling old code with an up-to-date compiler version, which might fail due to those new reserved words, FPC declared the & as an escape character. Thus, without refactoring the code but escaping, i.e. prepending an & to the identifier, the compiler accepts the actual reserved word as a valid identifier. New code though shall come up with different identifier names, without utilizing this feature.
Lazarus
No Lazarus o & é usado para
- indicar teclas de atalho em TMenuItem
From the Free Pascal wiki, page "&/pt", as it stood on 2022-08-06 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.