Sign in Join
Wiki copytemporary

&/fr: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: &/fr

OldNewLine
1+&
2+
3+En [[ASCII/fr|ASCII]], le caractère de code décimal `38` (ou [[hexadecimal/fr|$]]`26`) est défini pour être `&` (prononcé “esperluette” (ampersand)).
4+
5+## Pascal
6+
7+### Base octale
8+
9+En [[Pascal/fr|Pascal]], le `&` dénote un nombre écrit en base octale.
10+
11+``` pascal
12+program messageNo(input, output, stderr);
13+
14+uses
15+ baseUnix;
16+
17+begin
18+ // withdraw group write access to current terminal
19+ // equivalent to invoking: mesg n
20+ fpChmod('/dev/stdin', &0600);
21+end.
22+```
23+
24+Dans la base octale, seuls les caractères allant de `0` jusqu'à `7` inclus sont permis. `&` erst sépcifié devant pour indiquer la base octale.
25+
26+Une remarque au passage, dans un programme de production, le nombre dans l'exemple plus haut est mieux écrit ainsi :
27+
28+``` pascal
29+fpChmod('/dev/stdin', S_IRUSR or S_IWUSR);
30+```
31+
32+car c'est plus significatif qu'avoir un nombre brut. Pascal est un langage de haut niveau. Profitez de cet avantage. Ecrivez ce que vous *voulez dire* et non pas ce qu'en fait l'ordinateur fait.
33+
34+> **Note:** Les nombres littéraux en octal ne sont pas pris en charge [[Mode Delphi/fr|{$mode Delphi}]] et [[Mode TP/fr|{$mode TP}]].
35+
36+### Code d'échappement d'identificateur
37+
38+[[FPC/fr|FreePascal]] a déclaré rétroactivement quelques nouveaux [[Reserved word/fr|mots réservés]]. Afin d'être capable de compiler le vieux code avec un version du [[Compiler/fr|compiler]] à jour, qui pourrait échouer du fait de ces nouveaux mots-clés, FPC a déclaré le `&` comme un caractère d'échappement.
39+
40+Ainsi, sans refactorisation du code mais en ajoutant des échappements, i.e. en faisant précéder l'[[Identifier/fr|identificateur]] par `&`, le compilateur accepte le mot réservé actuel comme un identificateur valide. Le nouveau code doit cependant proposer des noms d'identificateur différents, sans utiliser cette fonction (NdT: qui est aussi disponible dans Delphi).
41+
42+## Lazarus
43+
44+En [[Lazarus Faq/fr|Lazarus]] le `&` est utilisé pour indiquer le raccourci-clavier dans [[TMenuItem/fr|TMenuItem]].
45+
46+---
47+*From the Free Pascal wiki, page "&/fr", 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](/wiki-contact).*

Back to history