Π‘Π°ΠΌΠΎ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡΠ΅ΠΊΠ°Π΅Ρ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠ°Π·Π°Ρ . Π ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ.
1. Π’ΡΠ΅Ρ Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² A12.1, Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ ΠΈΡ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ°ΠΌΠΈ. ΠΠ΅ΠΆΠ΄Ρ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ Π²ΡΡΠ°Π²Π»ΡΡΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π΅ΡΠ»ΠΈ ΡΠΎΠ³ΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°.
2. ΠΡΠ±ΡΠ°ΡΡΠ²Π°ΡΡΡΡ ΠΏΠ°ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΡΠΎΡΡΠΎΡΡΠΈΠ΅ ΠΈΠ· ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΉ Π½Π°ΠΊΠ»ΠΎΠ½Π½ΠΎΠΉ ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ; ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ "ΡΠΊΠ»Π΅ΠΈΠ²Π°Π½ΠΈΠ΅" ΡΡΡΠΎΠΊ (A12.2).
3. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ°Π·Π±ΠΈΠ²Π°Π΅ΡΡΡ Π½Π° Π»Π΅ΠΊΡΠ΅ΠΌΡ, ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ-ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΡΠΌΠΈ. ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΡΠΌΠΈ ΠΏΡΠΎΠ±Π΅Π»Π°ΠΌΠΈ. ΠΠ°ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ ΠΌΠ°ΠΊΡΠΎΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ (A12.3-A12.10).
4. ΠΡΠΊΠ΅ΠΉΠΏ-ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π² ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°Ρ ΠΈ ΡΡΡΠΎΠΊΠΎΠ²ΡΡ Π»ΠΈΡΠ΅ΡΠ°Π»Π°Ρ (A2.5.2, A2.6) Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡ. Π‘ΠΎΡΠ΅Π΄Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΎΠ²ΡΠ΅ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½ΠΈΡΡΡΡΡΡ.
5. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΡΠ°Π½ΡΠ»ΠΈΡΡΠ΅ΡΡΡ. ΠΠ°ΡΠ΅ΠΌ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ ΡΠ²ΡΠ·ΠΈ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΡΠ±ΠΎΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΡΡΠ»ΠΎΠΊ Π½Π° Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ Ρ ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠΌΠΈ.
A12.1. Π’ΡΠ΅Ρ Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ
ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ Π½Π°Π±ΠΈΡΠ°ΡΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ Π‘ΠΈ-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΎ Π½Π° ΡΠ΅ΠΌΠΈΠ±ΠΈΡΠΎΠ²ΠΎΠΌ ASCII-ΠΊΠΎΠ΄Π΅. ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ ΡΠΈΡΠ΅, ΡΠ΅ΠΌ ΠΈΠ½Π²Π°ΡΠΈΠ°Π½ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ISO 646-1983 (ISO 646-1983 Invariant Code Set). Π§ΡΠΎΠ±Ρ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΎΠΊΡΠ°ΡΠ΅Π½Π½ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π²ΡΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π½ΠΈΠΆΠ΅ ΡΡΠ΅Ρ Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠΌ Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ. ΠΠ°ΠΌΠ΅Π½Π° ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π΄ΠΎ Π»ΡΠ±ΠΎΠΉ ΠΈΠ½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ.
??= #
??( [
??< {
??/ \
??) ]
??> }
??' ^
??! |
??- ~
ΠΠΈΠΊΠ°ΠΊΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ Π·Π°ΠΌΠ΅Π½Ρ, ΠΊΡΠΎΠΌΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ , Π½Π΅ Π΄Π΅Π»Π°ΡΡΡΡ.
Π’ΡΠ΅Ρ Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²Π²Π΅Π΄Π΅Π½Ρ ANSI-ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠΌ.
A12.2. Π‘ΠΊΠ»Π΅ΠΈΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠΎΠΊ
Π‘ΡΡΠΎΠΊΠ°, Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΠ°ΡΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΉ Π½Π°ΠΊΠ»ΠΎΠ½Π½ΠΎΠΉ ΡΠ΅ΡΡΠΎΠΉ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅ΡΡΡ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΈΠΌΠ²ΠΎΠ» \ ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π·Π° Π½ΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ» Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π²ΡΠ±ΡΠ°ΡΡΠ²Π°ΡΡΡΡ. ΠΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄ "ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ΠΌ" ΡΠ΅ΠΊΡΡΠ° Π½Π° Π»Π΅ΠΊΡΠ΅ΠΌΡ.
Π12.3. ΠΠ°ΠΊΡΠΎΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΌΠ°ΠΊΡΠΎΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅
Π£ΠΏΡΠ°Π²Π»ΡΡΡΠ°Ρ ΡΡΡΠΎΠΊΠ° Π²ΠΈΠ΄Π°
#define ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ-Π»Π΅ΠΊΡΠ΅ΠΌ
Π·Π°ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Π·Π°ΠΌΠ΅Π½ΡΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ-Π»Π΅ΠΊΡΠ΅ΠΌ; ΡΠΈΠΌΠ²ΠΎΠ»Ρ-ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΠΈ Π² Π½Π°ΡΠ°Π»Π΅ ΠΈ Π² ΠΊΠΎΠ½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π»Π΅ΠΊΡΠ΅ΠΌ Π²ΡΠ±ΡΠ°ΡΡΠ²Π°ΡΡΡΡ. ΠΠΎΠ²ΡΠΎΡΠ½Π°Ρ ΡΡΡΠΎΠΊΠ° #define Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ, Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π»Π΅ΠΊΡΠ΅ΠΌ Π½Π΅ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½Ρ (Π½Π΅ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ Π² ΡΠΈΠΌΠ²ΠΎΠ»Π°Ρ -ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΡΡ ΠΏΡΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΈ Π²ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΡΡ). Π‘ΡΡΠΎΠΊΠ° Π²ΠΈΠ΄Π°
#define ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ(ΡΠΏΠΈΡΠΎΠΊ-ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ²) ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ-Π»Π΅ΠΊΡΠ΅ΠΌ
Π³Π΄Π΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠ΅ΡΠ²ΡΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ΠΈ Π·Π½Π°ΠΊΠΎΠΌ ( Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°-ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΌΠ°ΠΊΡΠΎΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ, Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΠΌΠΈ ΡΠΏΠΈΡΠΊΠΎΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ². ΠΠ°ΠΊ ΠΈ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅, ΡΠΈΠΌΠ²ΠΎΠ»Ρ-ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΠΈ Π² Π½Π°ΡΠ°Π»Π΅ ΠΈ Π² ΠΊΠΎΠ½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π»Π΅ΠΊΡΠ΅ΠΌ Π²ΡΠ±ΡΠ°ΡΡΠ²Π°ΡΡΡΡ, ΠΈ ΠΌΠ°ΠΊΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠΏΠΈΡΠΊΠΎΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΈ Ρ ΡΠΎΠΉ ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ Π»Π΅ΠΊΡΠ΅ΠΌ. Π£ΠΏΡΠ°Π²Π»ΡΡΡΠ°Ρ ΡΡΡΠΎΠΊΠ° Π²ΠΈΠ΄Π°
#undef ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ
ΠΏΡΠ΅Π΄ΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ "Π·Π°Π±ΡΡΡ" ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, Π΄Π°Π½Π½ΠΎΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ. ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ #undef ΠΊ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΌΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ Π½Π΅ ΡΡΠΈΡΠ°Π΅ΡΡΡ.
ΠΡΠ»ΠΈ ΠΌΠ°ΠΊΡΠΎΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ Π·Π°Π΄Π°Π½ΠΎ Π²ΡΠΎΡΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ, ΡΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΡΠΎΡΡΠΎΡΡΠ°Ρ ΠΈΠ· Π΅Π³ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ°, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ Π·Π° Π½ΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ-ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΡΠΌΠΈ, Π·Π½Π°ΠΊΠ° (, ΡΠΏΠΈΡΠΊΠ° Π»Π΅ΠΊΡΠ΅ΠΌ, ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π½ΡΡ Π·Π°ΠΏΡΡΡΠΌΠΈ, ΠΈ Π·Π½Π°ΠΊΠ° ), ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π²ΡΠ·ΠΎΠ² ΠΌΠ°ΠΊΡΠΎΡΠ°. ΠΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π²ΡΠ·ΠΎΠ²Π° ΠΌΠ°ΠΊΡΠΎΡΠ° ΡΠ²Π»ΡΡΡΡΡ Π»Π΅ΠΊΡΠ΅ΠΌΡ, ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π·Π°ΠΏΡΡΡΠΌΠΈ (Π·Π°ΠΏΡΡΡΠ΅, "Π·Π°ΠΊΡΡΡΡΠ΅" ΠΊΠ°Π²ΡΡΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΌΠΈ ΡΠΊΠΎΠ±ΠΊΠ°ΠΌΠΈ, Π² ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² Π½Π΅ ΡΡΠ°ΡΡΠ²ΡΡΡ). ΠΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΏΡΠΈ ΠΈΡ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΌΠ°ΠΊΡΠΎΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΠΌ Π½Π΅ ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π°ΡΡΡΡ. ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² Π² Π²ΡΠ·ΠΎΠ²Π΅ ΠΌΠ°ΠΊΡΠΎΡΠ° Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΌΠ°ΠΊΡΠΎΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ. ΠΠΎΡΠ»Π΅ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΎΠΊΡΡΠΆΠ°ΡΡΠΈΠ΅ ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ-ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΠΈ Π²ΡΠ±ΡΠ°ΡΡΠ²Π°ΡΡΡΡ. ΠΠ°ΡΠ΅ΠΌ Π² Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π»Π΅ΠΊΡΠ΅ΠΌ ΠΌΠ°ΠΊΡΠΎΡΠ° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ-ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ (Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π½Π΅ Π·Π°ΠΊΠ°Π²ΡΡΠ΅Π½Ρ) Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ. ΠΡΠ»ΠΈ Π² Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ Π½Π΅ ΡΡΠΎΠΈΡ Π·Π½Π°ΠΊ # ΠΈ Π½ΠΈ ΠΏΠ΅ΡΠ΅Π΄ Π½ΠΈΠΌ, Π½ΠΈ ΠΏΠΎΡΠ»Π΅ Π½Π΅Π³ΠΎ Π½Π΅Ρ Π·Π½Π°ΠΊΠ° ##, ΡΠΎ Π»Π΅ΠΊΡΠ΅ΠΌΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΡΡΡΡΡ: Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π»ΠΈ ΠΎΠ½ΠΈ Π² ΡΠ΅Π±Π΅ ΠΌΠ°ΠΊΡΠΎΠ²ΡΠ·ΠΎΠ²Π°, ΠΈ Π΅ΡΠ»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ, ΡΠΎ ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄ΡΡΠ°Π²Π»Π΅Π½, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ Π΅ΠΌΡ ΠΌΠ°ΠΊΡΠΎΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅.
ΠΠ° ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²Π»ΠΈΡΡΡ Π΄Π²Π° ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°. ΠΠ΅ΡΠ²ΡΠΉ -ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ #, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠ°Π²ΠΈΡΡΡ ΠΏΠ΅ΡΠ΅Π΄ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ. ΠΠ½ ΡΡΠ΅Π±ΡΠ΅Ρ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΈ Π·Π½Π°ΠΊΠ° # (ΠΏΠ΅ΡΠ΅Π΄ Π½ΠΈΠΌ) ΡΠ΅ΠΊΡΡ Π±ΡΠ» Π·Π°ΠΊΠ»ΡΡΠ΅Π½ Π² Π΄Π²ΠΎΠΉΠ½ΡΠ΅ ΠΊΠ°Π²ΡΡΠΊΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ Π² ΡΡΡΠΎΠΊΠΎΠ²ΡΡ Π»ΠΈΡΠ΅ΡΠ°Π»Π°Ρ ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° ΠΏΠ΅ΡΠ΅Π΄ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ΠΊΠ°Π²ΡΡΠΊΠΎΠΉ " (Π²ΠΊΠ»ΡΡΠ°Ρ ΠΈ ΠΎΠ±ΡΠ°ΠΌΠ»ΡΡΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π΄ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΉ Π½Π°ΠΊΠ»ΠΎΠ½Π½ΠΎΠΉ ΡΠ΅ΡΡΠΎΠΉ \ Π²ΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ \.
ΠΡΠΎΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ##. ΠΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π»Π΅ΠΊΡΠ΅ΠΌ Π² Π»ΡΠ±ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΠΌΠ°ΠΊΡΠΎΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ##, ΡΠΎ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΎΠ½ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΎΠΊΡΡΠΆΠ°ΡΡΠΈΠΌΠΈ Π΅Π³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ-ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΡΠΌΠΈ Π²ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΡΡΡ, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅ΠΌΡ "ΡΠΊΠ»Π΅ΠΈΠ²Π°ΡΡΡΡ" ΡΠΎΡΠ΅Π΄Π½ΠΈΠ΅ Π»Π΅ΠΊΡΠ΅ΠΌΡ, ΠΎΠ±ΡΠ°Π·ΡΡ ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ Π½ΠΎΠ²ΡΡ Π»Π΅ΠΊΡΠ΅ΠΌΡ. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΏΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ Π»Π΅ΠΊΡΠ΅ΠΌ ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΡΠΉ ΡΠ΅ΠΊΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² ##. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ## Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΎΡΡΡ Π½ΠΈ Π² Π½Π°ΡΠ°Π»Π΅, Π½ΠΈ Π² ΠΊΠΎΠ½ΡΠ΅ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π»Π΅ΠΊΡΠ΅ΠΌ.
Π ΠΌΠ°ΠΊΡΠΎΡΠ°Ρ ΠΎΠ±ΠΎΠΈΡ Π²ΠΈΠ΄ΠΎΠ² Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π»Π΅ΠΊΡΠ΅ΠΌ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π° ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΡΠ°ΠΌ Π½ΠΎΠ²ΡΡ define-ΠΈΠΌΠ΅Π½. ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΆΠ΅ Π±ΡΠ» Π·Π°ΠΌΠ΅Π½Π΅Π½ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΈ, ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ΅ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° Π½Π΅ Π²ΡΠ·ΠΎΠ²Π΅Ρ Π΅Π³ΠΎ Π·Π°ΠΌΠ΅Π½Ρ.
ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ ΡΠΎ Π·Π½Π°ΠΊΠ° #, ΠΎΠ½ΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΠΎΡΠΏΡΠΈΠ½ΡΡΠΎ ΠΊΠ°ΠΊ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°.
Π ANSI-ΡΡΠ°Π½Π΄Π°ΡΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡ ΠΌΠ°ΠΊΡΠΎΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΠΎΠΏΠΈΡΠ°Π½ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΡΠ½ΠΎ, ΡΠ΅ΠΌ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΈΠ·Π΄Π°Π½ΠΈΠΈ ΠΊΠ½ΠΈΠ³ΠΈ. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠ°ΡΠ°ΡΡΡΡ Π²Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² # ΠΈ ##, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π²Π½ΡΡΡΠΈ ΡΡΡΠΎΠΊ ΠΈ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΡ Π»Π΅ΠΊΡΠ΅ΠΌ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΎΠ²ΡΡ ΠΏΡΠ°Π²ΠΈΠ», ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΊΠ°ΡΠ°ΡΡΠΈΠ΅ΡΡ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΠΈ, ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ°Π½Π½ΡΠΌΠΈ. (Π‘ΠΌ. ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ.)
ΠΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΏΠΎΠΊΠ°Π·Π° ΡΠΌΡΡΠ»ΠΎΠ²ΠΎΠΉ ΡΡΡΠ½ΠΎΡΡΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²
#define TABSIZE 100
int table[TABSIZE];
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅
#define ABSDIFF(a,b) ((a)>(b) ? (a)-(b) : (b)-(a))
Π·Π°Π΄Π°Π΅Ρ ΠΌΠ°ΠΊΡΠΎΡ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠΉ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·Π½ΠΎΡΡΠΈ Π΅Π³ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ². Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΈ, Π΄Π΅Π»Π°ΡΡΠ΅ΠΉ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π·Π΄Π΅ΡΡ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ Π»ΡΠ±ΠΎΠΉ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΈΠΏ ΠΈ Π΄Π°ΠΆΠ΅ Π±ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΠ±ΠΎΡΠ½ΡΠΉ ΡΡΡΠ΅ΠΊΡ, Π²ΡΡΠΈΡΠ»ΡΡΡΡΡ Π΄Π²Π°ΠΆΠ΄Ρ: ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· - ΠΏΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅, Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π· - ΠΏΡΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°.
ΠΡΠ»ΠΈ ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅
#define tempfile(dir) #dir "/%s"
ΡΠΎ ΠΌΠ°ΠΊΡΠΎΠ²ΡΠ·ΠΎΠ² tempfile(/usr/tmp) Π΄Π°ΡΡ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅
"/usr/tmp" "/%s"
ΠΠ°Π»Π΅Π΅ ΡΡΠΈ Π΄Π²Π΅ ΡΡΡΠΎΠΊΠΈ ΠΏΡΠ΅Π²ΡΠ°ΡΡΡΡΡ Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ. ΠΠΎ ΠΌΠ°ΠΊΡΠΎΡΡ
#define cat(x,y) x ## y
Π²ΡΠ·ΠΎΠ² cat(var, 123) ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ var123. ΠΠ΄Π½Π°ΠΊΠΎ cat (cat (1,2),3) Π½Π΅ Π΄Π°ΡΡ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ³ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ## Π²ΠΎΡΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ Π²ΡΠ·ΠΎΠ²Π° cat. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠ΄Π°Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΡΠ΅ΠΏΠΎΡΠΊΠ° Π»Π΅ΠΊΡΠ΅ΠΌ:
cat ( 1 , 2 )3
Π³Π΄Π΅ )3 (ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ "ΡΠΊΠ»Π΅ΠΈΠ²Π°Π½ΠΈΡ" ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π»Π΅ΠΊΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π»Π΅ΠΊΡΠ΅ΠΌΠΎΠΉ Π²ΡΠΎΡΠΎΠ³ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°) Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ Π»Π΅ΠΊΡΠ΅ΠΌΠΎΠΉ. ΠΡΠ»ΠΈ Π²ΡΠΎΡΠΎΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΌΠ°ΠΊΡΠΎΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π·Π°Π΄Π°Π½ Π² Π²ΠΈΠ΄Π΅
#define xcat(x,y) cat(x,y)
ΡΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΉ Π·Π΄Π΅ΡΡ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ;
xcat(Ρ Ρat(1, 2), 3)
Π² ΠΈΡΠΎΠ³Π΅ Π΄Π°ΡΡ 123, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ°ΠΌ xcat Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ##.
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈ ABSDIFF(ABSDIFF(a, b), c), ΠΈ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
A12.4. ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π°
Π£ΠΏΡΠ°Π²Π»ΡΡΡΠ°Ρ ΡΡΡΠΎΠΊΠ°
#include <ΠΈΠΌΡ-ΡΠ°ΠΉΠ»Π°>
Π·Π°ΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π½Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈΠΌΡ-ΡΠ°ΠΉΠ»Π°. Π‘ΡΠ΅Π΄ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ ΠΈΠΌΡ-ΡΠ°ΠΉΠ»Π°, Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π·Π½Π°ΠΊΠ° > ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π° Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½, Π΅ΡΠ»ΠΈ ΠΈΠΌΡ-ΡΠ°ΠΉΠ»Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π»ΡΠ±ΠΎΠΉ ΠΈΠ· ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ", ', \ ΠΈΠ»ΠΈ ΠΏΠ°ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² /*. ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΏΠΎΠΈΡΠΊΠ° ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
ΠΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΆΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡΠ°Ρ ΡΡΡΠΎΠΊΠ°
#include "ΠΈΠΌΡ-ΡΠ°ΠΉΠ»Π°"
Π‘Π½Π°ΡΠ°Π»Π° ΠΏΠΎΠΈΡΠΊ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ, ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈΡΠ΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΡΠ°ΠΉΠ» (ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ), Π° Π² ΡΠ»ΡΡΠ°Π΅ Π½Π΅ΡΠ΄Π°ΡΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΏΠΎΠΈΡΠΊΠ°, ΠΏΡΠΈΠ½ΡΡΡΠΌ Π² #include ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΎΡΡΠ°Π΅ΡΡΡ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ, Π΅ΡΠ»ΠΈ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ", \ ΠΈΠ»ΠΈ /*; ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π½Π°ΠΊΠ° > ΡΠ°Π·ΡΠ΅ΡΠ°Π΅ΡΡΡ.