ΠΠΌΠ΅Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΡ ΡΠΈΠΏΠΎΠ² (typedef Β§R.7.13), ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ (Β§R.7.2) ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½Π° ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² ΡΠΈΠΏΠ° (Β§R.14) Π½Π΅ ΠΈΠΌΠ΅ΡΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΡ.
Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ»Π΅Π½Ρ ΠΊΠ»Π°ΡΡΠ° (Β§R.9.4) Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ Π²Π½Π΅ΡΠ½Π΅Π΅ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΠ΅.
Π€ΡΠ½ΠΊΡΠΈΠΈ-ΡΠ»Π΅Π½Ρ, Π½Π΅ ΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΎΠΉ, Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ Π²Π½Π΅ΡΠ½Π΅Π΅ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΠ΅. Π€ΡΠ½ΠΊΡΠΈΠΈ-ΡΠ»Π΅Π½Ρ, ΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΎΠΉ, Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ Π² ΡΠΎΡΠ½ΠΎΡΡΠΈ ΠΎΠ΄Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅.
ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° (Β§R.3.2), ΡΠ²Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΡΠΎ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ extern, ΠΈΠΌΠ΅ΡΡ Π²Π½Π΅ΡΠ½Π΅Π΅ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ΠΈ ΡΠΆΠ΅ Π½Π΅ Π±ΡΠ»ΠΈ ΠΎΠΏΠΈΡΠ°Π½Ρ ΠΊΠ°ΠΊ static (Β§R.7.1.1).
Π’ΠΈΠΏΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π²ΠΎ Π²ΡΠ΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ, Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠΌΠ΅Π½ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΡ ΡΠΈΠΏΠΎΠ² (Β§R.7.1.3) ΠΈ ΡΠΊΠ°Π·Π°Π½ΠΈΡ Π³ΡΠ°Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² (Β§R.8.2.4). ΠΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π² ΡΠΎΡΠ½ΠΎΡΡΠΈ ΠΎΠ΄Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΊΠ»Π°ΡΡΠ° ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΈ Π΅Π΅ Π°Π΄ΡΠ΅Ρ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, Π΅Π΅ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ. ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ, Π΅ΡΠ»ΠΈ ΠΈΠΌΡ ΠΊΠ»Π°ΡΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π·Π½Π°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ°, ΡΠΎ ΠΊΠ»Π°ΡΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ.
ΠΠ±Π»Π°ΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ ΠΊΠ»Π°ΡΡ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΡ Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡΠΌΠΈ Π½Π° Π΄ΡΡΠ³ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ (Β§R.7.4).
R.3.4 ΠΠ°ΡΠ°Π»ΠΎ ΠΈ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ main(). ΠΠΉ ΠΏΡΠΈΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΡΠΎΠ»Ρ Π½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π΄Π»Ρ ΡΡΠ°Π½ΡΠ»ΡΡΠΎΡΠ°, ΠΎΠ½Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ΅Π½Π°, Π° Π΅Π΅ ΡΠΈΠΏ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ Π»ΡΠ±Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ Π΄Π²Π° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π½ΠΈΠΆΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΏΠΎΡΠ»Π΅ argv Π»ΡΠ±ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ. Π€ΡΠ½ΠΊΡΠΈΡ main ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΡΠ°ΠΊ
int main() {/*β¦ */}
ΠΈΠ»ΠΈ
int main(int argc, char* argv[]) {/*β¦ */}
Π ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ argc Π·Π°Π΄Π°Π΅Ρ ΡΠΈΡΠ»ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠ½Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ. ΠΡΠ»ΠΈ argc Π½Π΅ ΡΠ°Π²Π½ΠΎ Π½ΡΠ»Ρ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΡΡΠΎΠΊΠΈ, Π·Π°Π²Π΅ΡΡΠ°ΡΡΠΈΠ΅ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ '\0', Ρ ΠΏΠΎΠΌΠΎΡΡΡ argv[0] Π΄ΠΎ argv[argc-1], ΠΏΡΠΈΡΠ΅ΠΌ argv[0] Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΠΏΠΎΠ΄ ΠΊΠΎΡΠΎΡΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π±ΡΠ»Π° Π·Π°ΠΏΡΡΠ΅Π½Π°, ΠΈΠ»ΠΈ "". ΠΠΎΠ»ΠΆΠ½ΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ, ΡΡΠΎ argv[argc]==0.
Π€ΡΠ½ΠΊΡΠΈΡ main() Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ·ΡΠ²Π°ΡΡΡΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅. Π‘Π²ΡΠ·ΡΠ²Π°Π½ΠΈΠ΅ main() (Β§R.3.3) Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΠ΅Π»ΡΠ·Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π°Π΄ΡΠ΅Ρ main() ΠΈ Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ Π΅Π΅ ΠΊΠ°ΠΊ inline ΠΈΠ»ΠΈ static.
ΠΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ
void exit(int);
ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠΉ Π² βΉstdlib.hβΊ, Π·Π°Π²Π΅ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π΅Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² (Β§R.3.5) Π΅Π΄ΠΈΠ½ΠΈΡΡ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΡΠ΅ΠΆΠ΄Π΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ Π² ΡΡΠΎΠΉ Π΅Π΄ΠΈΠ½ΠΈΡΠ΅ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ. ΠΡΠ° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ (Β§R.8.4, Β§R.9.4, Β§R.12.1, Β§R.12.6.1) ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π° ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° main() ΠΈΠ»ΠΈ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π° Π΄ΠΎ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ°, ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π² Π΄Π°Π½Π½ΠΎΠΉ Π΅Π΄ΠΈΠ½ΠΈΡΠ΅ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ. ΠΡΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡΡΡΡ Π½ΡΠ»Π΅ΠΌ (Β§R.8.4) ΠΏΡΠ΅ΠΆΠ΄Π΅ Π»ΡΠ±ΠΎΠΉ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ (Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ) ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΠΎΠ»ΡΡΠ΅ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ Π½Π° ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈΠ· ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π΅Π΄ΠΈΠ½ΠΈΡ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ Π½Π΅ Π½Π°Π»Π°Π³Π°Π΅ΡΡΡ. ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΎΠΏΠΈΡΠ°Π½Π° Π² Β§R.8.4.
ΠΠ΅ΡΡΡΡΠΊΡΠΎΡΡ (Β§R.12.4) Π΄Π»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π²ΡΠ·ΡΠ²Π°ΡΡΡΡ ΠΏΡΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅ ΠΈΠ· main() ΠΈΠ»ΠΈ ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ exit().
Π£Π½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ atexit() ΠΈΠ· βΉstdlib.hβΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΏΡΠΈ Π²ΡΡ ΠΎΠ΄Π΅ ΠΈΠ· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΡΠ»ΠΈ Π±ΡΠ»ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ atexit(), ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄ΠΎ Π²ΡΠ·ΠΎΠ²Π° atexit(), Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ½ΠΈΡΡΠΎΠΆΠ°ΡΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ Π²ΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π² atexit(). ΠΡΠ»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ C++ ΡΠΎΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π‘, Π²ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΠ»ΠΈ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ ΠΏΠΎΡΠ»Π΅ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΈ, Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π² atexit(), ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ Π²ΡΠ·ΠΎΠ²Π° Π²ΡΠ΅Ρ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠΎΠ².
ΠΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ
void abort();
ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠΉ Π² βΉstdlib.hβΊ, Π·Π°Π²Π΅ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π±Π΅Π· Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠΎΠ² ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈ Π±Π΅Π· Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΉ, Π·Π°Π΄Π°Π½Π½ΡΡ Π² atexit().
R.3.5 ΠΠ»Π°ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π° ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌΡΡ ΠΊΠ»Π°ΡΡΠ° ΠΏΠ°ΠΌΡΡΠΈ: Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ.
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ Π±Π»ΠΎΠΊ.
Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΡΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΠΎ Π²ΡΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡΡΡΡ (Β§R.12.1) Π²ΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ Π² Π±Π»ΠΎΠΊ, Π³Π΄Π΅ ΠΎΠ½ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΠΈ ΡΠ½ΠΈΡΡΠΎΠΆΠ°ΡΡΡΡ (Β§R.12.4) ΠΏΠΎ Π²ΡΡ ΠΎΠ΄Π΅ ΠΈΠ· ΡΡΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° (Β§R.6.7).
ΠΠΎΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ Π΄ΠΎ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ Π΅Π³ΠΎ Π±Π»ΠΎΠΊΠ°, ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ ΠΏΠΎΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ°, ΠΈΠΌΠ΅ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΈΠ»ΠΈ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡ Ρ ΠΏΠΎΠ±ΠΎΡΠ½ΡΠΌ ΡΡΡΠ΅ΠΊΡΠΎΠΌ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΡΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ.
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ, Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠΌ ΠΈΠ»ΠΈ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠΎΠΌ, ΠΈΠΌΠ΅ΡΡΠΈΠΌΠΈ ΠΏΠΎΠ±ΠΎΡΠ½ΡΠΉ ΡΡΡΠ΅ΠΊΡ, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΠΎΠ½ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ.
Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡΡΡΡ ΠΈ ΡΠ½ΠΈΡΡΠΎΠΆΠ°ΡΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ Π² Β§R.3.4 ΠΈ Β§R.6.7. Π‘ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ Π½Π΅ ΡΠ²ΡΠ·Π°Π½ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ, ΡΠΌ. Β§R.5.3.3 ΠΈ Β§R.12.2. ΠΡΠ΅ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠΌΠ΅ΡΡ ΠΊΠ»Π°ΡΡ ΠΏΠ°ΠΌΡΡΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ. ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ ΠΈ ΡΠ»Π΅Π½Π°ΠΌ ΠΊΠ»Π°ΡΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄Π°ΡΡ ΠΊΠ»Π°ΡΡ ΠΏΠ°ΠΌΡΡΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ²Π½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠ° ΠΏΠ°ΠΌΡΡΠΈ static (Β§R.7.1.1).
R.3.6 Π’ΠΈΠΏΡ
Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ Π΄Π²Π° Π²ΠΈΠ΄Π° ΡΠΈΠΏΠΎΠ²: ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΡΠ΅.
R.3.6.1 ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΈΠΏΠΎΠ². Π ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ βΉlimits.hβΊ Π·Π°Π΄Π°ΡΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°.
ΠΠ±ΡΠ΅ΠΊΡΡ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΠΊΠ°ΠΊ ΡΠΈΠΌΠ²ΠΎΠ»Ρ (char), ΠΌΠΎΠ³ΡΡ Ρ ΡΠ°Π½ΠΈΡΡ Π»ΡΠ±ΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈΠ· Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π΄Π°Π½Π½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ. ΠΡΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ» ΡΡΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° Ρ ΡΠ°Π½ΠΈΡΡΡ Π² ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΡΠΎ Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ ΡΠ΅Π»ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΡΡΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°. Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ ΠΌΠΎΠ³ΡΡ ΡΠ²Π½ΠΎ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ unsigned ΠΈΠ»ΠΈ signed. ΠΠ±ΡΡΠ½ΡΠΉ char, signed char ΠΈ unsigned char ΡΠ²Π»ΡΡΡΡΡ ΡΡΠ΅ΠΌΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ. ΠΠ»Ρ Π²ΡΠ΅Ρ ΡΡΠΈΡ ΡΡΠ΅Ρ ΡΠΈΠΏΠΎΠ² ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΉ short int, int ΠΈ long int ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠ΅Π»ΡΠ΅ ΡΡΠ΅Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ². ΠΠ»Ρ Π΄Π»ΠΈΠ½Π½ΡΡ ΡΠ΅Π»ΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ Π½Π΅ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠ΅ΠΌ Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΊΠΈΡ ΡΠ΅Π»ΡΡ , Π½ΠΎ Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ ΡΠ΅Π»ΡΠ΅, ΠΈΠ»ΠΈ Π΄Π»ΠΈΠ½Π½ΡΠ΅ ΡΠ΅Π»ΡΠ΅, ΠΈΠ»ΠΈ ΠΈ ΡΠ΅ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΡΠΌΠΈ ΠΎΠ±ΡΡΠ½ΡΠΌ ΡΠ΅Π»ΡΠΌ. ΠΠ±ΡΡΠ½ΡΠ΅ ΡΠ΅Π»ΡΠ΅ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄, ΡΠ°Π·ΠΌΠ΅ΡΡ Π΄ΡΡΠ³ΠΈΡ ΡΠ΅Π»ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡΠΌΠΈ.
ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΡΠΈΠΏΠΎΠ² signed char, short, int ΠΈ long ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠΈΠΏ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΠ΅Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ. Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ - ΡΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ (Β§R.5.4).
ΠΠ΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠ΅Π»ΡΠ΅, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΠΊΠ°ΠΊ unsigned, ΠΏΠΎΠ΄ΡΠΈΠ½ΡΡΡΡΡ Π·Π°ΠΊΠΎΠ½ΠΎΠΌ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠΈ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ 2n, Π³Π΄Π΅ n ΡΠΈΡΠ»ΠΎ Π±ΠΈΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ΅ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΡΡΡΠ΄Π° ΡΠ»Π΅Π΄ΡΠ΅Ρ, ΡΡΠΎ Π² Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠ΅ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΡ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠΈ ΡΠΈΠΏΠ° Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ: float, double ΠΈ long double. Π’ΠΈΠΏ double Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ Π½Π΅ ΠΌΠ΅Π½ΡΡΡΡ ΡΠΎΡΠ½ΠΎΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ, ΡΠ΅ΠΌ float, Π° ΡΠΈΠΏ long double Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ ΡΠΎΡΠ½ΠΎΡΡΡ Π½Π΅ ΠΌΠ΅Π½ΡΡΠ΅, ΡΠ΅ΠΌ Ρ double. Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΈΠΏΠΎΠ² Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ βΉfloat.hβΊ.
Π’ΠΈΠΏΡ char, int Π»ΡΠ±ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΈ ΡΠΈΠΏ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ (Β§R.7.2) Π½Π°Π·ΡΠ²Π°ΡΡΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ. Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠΈΠΏΠ°ΠΌΠΈ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ ΠΎΠ±ΡΠ°Π·ΡΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΠΏΡ.
Π’ΠΈΠΏ void Π·Π°Π΄Π°Π΅Ρ ΠΏΡΡΡΠΎΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΠΏΠ° ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. ΠΠ΅Π»ΡΠ·Ρ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ Ρ ΡΠΈΠΏΠΎΠΌ void. ΠΡΠ±ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ ΠΊ ΡΠΈΠΏΡ void (Β§R.5.4), ΠΏΠΎΠ»ΡΡΠΈΠ²ΡΠ΅Π΅ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠ°ΠΊ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅-ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ (Β§R.6.2), ΠΊΠ°ΠΊ Π»Π΅Π²ΡΠΉ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π°ΠΏΡΡΠ°Ρ (Β§R.5.18) ΠΈΠ»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²ΡΠΎΡΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΡΡΠ΅ΡΡΠ΅Π³ΠΎ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π° Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ?: (Β§R.5.16).
R.3.6.2 ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΡΠ΅ ΡΠΈΠΏΡ
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΡΡ ΡΠΈΠΏΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠΎΡΡΡΡ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΈΠΏΠΎΠ² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ:
ΠΌΠ°ΡΡΠΈΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Β§R.8.4;
ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΈΠΌΠ΅ΡΡΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Β§R.8.2.5;
ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Β§R.8.2.1;
ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Β§R.8.2.2;
ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, ΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Β§R.7.1.6;
ΠΊΠ»Π°ΡΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ² (Β§R.9), Π½Π°Π±ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΡΠΈΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ (Β§R.9.3) ΠΈ ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΡΠΈΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ ΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌ, Β§R.11;
ΡΡΡΡΠΊΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ Π±Π΅Π· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° Π΄ΠΎΡΡΡΠΏ, $$r.11;
ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΡΡΡΡΠΊΡΡΡΠ°ΠΌΠΈ, ΡΠΏΠΎΡΠΎΠ±Π½ΡΠΌΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π² ΡΠ°Π·Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ², Β§R.9.5;