Π Π°Π·Π½ΠΎΠ΅

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ си: Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π£Ρ€ΠΎΠΊ 22 курса «ΠžΡΠ½ΠΎΠ²Ρ‹ языка C»

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка Π‘ΠΈ

ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, приостановитС Ρ€Π°Π±ΠΎΡ‚Ρƒ AdBlock Π½Π° этом сайтС.





Π’ ΠΏΡ€ΠΎΡˆΠ»Ρ‹Ρ… ΡƒΡ€ΠΎΠΊΠ°Ρ… ΠΌΡ‹ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… стандартных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΡ… ΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ»ΠΈΡΡŒ доступны, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π»ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΈΠΌΠ΅Ρ€ stdio.h, math.h ΠΈΠ»ΠΈ string.h. Они входят Π² состав стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка Π‘ΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ языка Π‘ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ· ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π½Π°ΠΌΠΈ Ρ€Π°Π½Π΅Π΅ stdlib.h ΠΈ time.h.



Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка Π‘ΠΈ – это Π½Π°Π±ΠΎΡ€ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‚ возмоТности языка Π‘ΠΈ. НапримСр, ΠΊΠ°ΠΊ ΠΌΡ‹ ΡƒΠΆΠ΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π»ΠΈ Ρ€Π°Π½Π΅Π΅, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊ нашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Ρ„Π°ΠΉΠ»Π° math.h позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ матСматичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ stdio.h позволяСт Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ с внСшним ΠΌΠΈΡ€ΠΎΠΌ (Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ/Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅).



Π‘Ρ…Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСбС язык программирования Π‘ΠΈ ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. Условно эта структура ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π° Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ рисункС.

Рис.1 АрхитСктура языка Π‘ΠΈ.




По Ρ„Π°ΠΊΡ‚Ρƒ язык Π‘ΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π±Π΅Π· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΏΠΎΡ‡Ρ‚ΠΈ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚. Π”Π°ΠΆΠ΅ вывСсти Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π° экран. Но благодаря Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ модулям (стандартным Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ) возмоТности языка ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ сущСствСнно Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹. А Ссли ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ возмоТности Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹, Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.



ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΡˆΠΈΡ€ΠΎΠΊΠΎΠ΅ распространСниС Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ.
ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΏΠ»ΡŽΡΡ‹:

  • ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ собой нСзависимы ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ/ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΈ всСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ†Π΅Π»ΠΎΠΌ;
  • Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ;
  • Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° Π·Π° счёт добавлСния/написания Π½ΠΎΠ²ΠΎΠ³ΠΎ модуля.


ΠœΠΎΠ΄ΡƒΠ»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² с ΠΊΠΎΠ΄ΠΎΠΌ.
ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ свои Π·Π°Π΄Π°Ρ‡ΠΈ. ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСбС ΠΊΠ°ΠΊ Β«Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΉ ящик». Π£ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ Π΄Π²Π΅ основных части: интСрфСйс взаимодСйствия с ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ (сколько ΠΈ ΠΊΠ°ΠΊΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… поступаСт Π² Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΉ ящик ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠΌ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ) ΠΈ внутрСнняя рСализация модуля (содСрТимоС Ρ‡Ρ‘Ρ€Π½ΠΎΠ³ΠΎ ящика).



Если Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π΅Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ языка Π‘ΠΈ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, Ρ‚ΠΎ интСрфСйсом являСтся Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Он ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ описываСт, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹: ΠΊΠ°ΠΊΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Π΅ Π½ΡƒΠΆΠ½Ρ‹, Π² ΠΊΠ°ΠΊΠΎΠΌ порядкС ΠΈΡ… Π½Π°Π΄ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ, Π² ΠΊΠ°ΠΊΠΎΠΌ количСствС ΠΈ Ρ‚.Π΄., Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚. Π’Π΅Π»ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΈ этом являСтся Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ модуля.



ΠšΡΡ‚Π°Ρ‚ΠΈ, Ρ‡Ρ‚ΠΎ касаСтся стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка Π‘ΠΈ. Если Π²Ρ‹ Π΅Ρ‰Ρ‘ Π½Π΅ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π»ΠΈ ΠΈΡΠΊΠ°Ρ‚ΡŒ Ρƒ сСбя Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Ρ‚ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅. Π’Π½ΡƒΡ‚Ρ€ΠΈ Π½ΠΈΡ… Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΡ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π° самой Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π΅Ρ‚. Π’.Π΅. ΠΏΠΎ Ρ„Π°ΠΊΡ‚Ρƒ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… содСрТится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ интСрфСйс модуля ΠΈΠ»ΠΈ ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ API(Application Programming Interface, Ρ‡ΠΈΡ‚. эй-ΠΏΠΈ-Π°ΠΉ, ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΠΎ-русски произносят Π°ΠΏΠΈ), Π° сами Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΡ‚ программиста скрыты ΠΈ находятся ΡƒΠΆΠ΅ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ…, скомпилированных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ….



ИспользованиС API – Ρ‚ΠΎΠΆΠ΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ распространённая ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°. МногиС сСрвисы ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ свой ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ API. НапримСр, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Stepic, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ для автоматичСской ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π·Π°Π΄Π°Ρ‡, ΠΈΠ»ΠΈ сайт Π’ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π΅. Π’.Π΅. ΠΏΠΎ сути Π΄Π°Π½Π½Ρ‹Π΅ сайты Π²Ρ‹ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ доступ (vk, Stepic) описаниС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я ΠΌΠΎΠ³Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…. ИмСнно Π½Π° использовании API строится Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… сСрвисов ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ.

13 Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π‘++, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ

Помимо стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, содСрТащСй основныС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ языка Π‘++, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ дСсятки, Π° Ρ‚ΠΎ ΠΈ сотни Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. КаТдая ΠΈΠ· этих Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ содСрТит ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, производящиС ряд дСйствий.

ИспользованиС сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ сокращаСт ΠΎΠ±ΡŠΡ‘ΠΌ ΠΊΠΎΠ΄Π° ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, использован  Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ оттСстированныС сотнями программистов Π² Ρ€Π°Π·Π½ΠΎΠΏΠ»Π°Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…, послС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π»Π΅Ρ‚ ΡˆΠ»ΠΈΡ„ΠΎΠ²ΠΊΠΈ Π΄ΠΎΡΡ‚ΠΈΠ³Π°ΡŽΡ‚ Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΠΎ всСм ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ.

Π—Π½Π°Π½ΠΈΠ΅ ΠΈ использованиС ряда ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ сильно ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ программиста. По этому ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΡƒ Ρ€Π°Π±ΠΎΡ‚ΠΎΠ΄Π°Ρ‚Π΅Π»ΠΈ Π»Π΅Π³ΠΊΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎΠ³ΠΎ профСссионала ΠΎΡ‚ Π½Π΅ΠΎΠΏΡ‹Ρ‚Π½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π’Ρ‹ смоТСтС ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с рядом ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ.

Π’Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°

V8

Если Π’Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ инструмСнт для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с JavaScript, V8 ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚ идСально.

Π‘Π²ΠΎΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ V8 Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ классы, написанныС Π½Π° с++ ΠΈ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Π΅ Π² namespace V8. Π Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π΄ΠΆΠ°Π²Π° скрипт β€” структурами ΠΌΠΎΠΆΠ½ΠΎ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΡƒΡŽ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΡƒ с++.

Π‘Ρ…Π΅ΠΌΠ° взаимодСйствия ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² с++ ΠΈ V8 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° посрСдством использования Β v8::Handle (template-классов).

Установка V8 ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π° польза для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ пСриодичСски приходится Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с JavaScript’ом, Π½Π΅ΠΎΡ†Π΅Π½ΠΈΠΌΠ°.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ…, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ C++ ΠΈ JavaScript ΠΎΡ‡Π΅Π½ΡŒ Π»ΡŽΠ±ΡΡ‚ ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ Π½Π° собСсСдованиях. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π΄Π°ΠΆΠ΅, Ссли Π²Ρ‹ Π½Π΅ ΡΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с js , с V8 ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ.

WebKit

Β 

Π’Π°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ‡Π΅, ΠΏΠΎΡ‡Ρ‚ΠΈ всС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… этапах ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ web – элСмСнты. Π§Ρ‚ΠΎΠ±Ρ‹ всё выглядСло красиво ΠΈ Π² ΠΊΠΎΠ΄Π΅, ΠΈ Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ, Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ этой Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ ΠΎΡ‚Π½ΠΈΠΌΠ°Π»ΠΎ слишком ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ сил, сущСствуСт Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° WebKit.

НСкоторыС программисты Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ WebKit Β«Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΌ ящиком», ΠΎΡ€Π³Π°Π½ΠΈΡ‡Π½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ html, css ΠΈ JavaScript Π² ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹Π΅ Π²Π΅Π±-страницы.

Awesomium

Awesomium β€” это Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (Π½Π° Π±Π°Π·Π΅ Chromium) Π² своё ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ‚ 2 Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹: Offscreen ΠΈ Windowed.

Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Offscreen отрисовка  ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° скриптов Π½Π° экранС Π½Π΅ отобраТаСтся.

Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Windowed срСдствами Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ эффСктивно выполняСтся отрисовка Π² Β«ΠΎΠΊΠ½Π΅ приписки» ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° активности ΠΌΡ‹ΡˆΠΈ ΠΈ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹.

Awesomium Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ примСняСтся Π² дСсятках Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠžΠΏΠΈΡΠ°Π½Ρ‹ случаи ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ этой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π² 3D ΠΈΠ³Ρ€Ρ‹.

БущСствСнный минус – отсутствиС Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ сообщСства, способного ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ, ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° вопросы ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ошибки. А докумСнтация, доступная для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Awesomium Π½Π° с++, Π΄Π°Ρ‘Ρ‚ довольно смутноС прСдставлСниС ΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ… Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Awesomium остаётся ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ инструмСнтом, завоСвавшим ΠΏΡ€ΠΈΠ·Π½Π°Π½ΠΈΠ΅ сотСн Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ.

Π Π°Π±ΠΎΡ‚Π° с сСрвСром

Libcurl

Π₯ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ взаимодСйствиС с сСрвСром? – ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Libcurl.

Libcurl ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ (изобраТСния, Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΡ€.) прилоТСниям. Libcurl ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ 13 основных ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² FTP, FTPS, HTTP, HTTPS, TFTP, SCP, SFTP, Telnet, DICT, LDAP, Π° Ρ‚Π°ΠΊΠΆΠ΅ POP3, IMAP ΠΈ SMTP.

Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ cUrl прСдназначался для использования Π½Π° языкС Π‘. БСйчас для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Libcurl Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΊ 30 языкам программирования. Π§Ρ‚ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ высокой популярности Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π² срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². На это ΠΆΠ΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ высокий Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°. Β 

Π‘ΠΆΠ°Ρ‚ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ для сТатия Π΄Π°Π½Π½Ρ‹Ρ… довольно ΠΌΠ½ΠΎΠ³ΠΎ, ΠΎΠ΄Π½Π° ΠΈΠ· самых ΡƒΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΈ популярных

Zlib

Π‘ΠΆΠ°Ρ‚ΠΈΠ΅ Π»ΡŽΠ±Ρ‹Ρ… ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… (Π΄Π°ΠΆΠ΅ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‰ΠΈΡ… ΠΎΠ±ΡŠΡ‘ΠΌ памяти) с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ zlib проводится ΠΏΡ€Π΅Π΄Π΅Π»ΡŒΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ.

Zlib написана Π½Π° языкС Π‘ ΠΈ примСняСтся Π² тысячах ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². ИспользованиС Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π· использования zlib. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ Ρ‚Π°ΠΊΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ являСтся основная  Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с растровой Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ .pngΒ  β€” libpng.

Π Π°Π±ΠΎΡ‚Π° с изобраТСниями

Libpng ΠΈ libjpg

Libpng, написанная Π½Π° C с использованиСм ассСмблСра, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с изобраТСниями Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ .png.

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с изобраТСниями Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ .jpg сущСствуСт Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Β  libjpg (Ρ‚Π°ΠΊΠΆΠ΅ написанная Π½Π° Π‘ с использованиСм АссСмблСра)

ОбС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ инструкции ΠΈ мноТСство ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² использования ΠΊΠ°ΠΊ Π² Π‘, Ρ‚Π°ΠΊ ΠΈ Π² Π‘++.

Π Π°Π±ΠΎΡ‚Π° с PDF

ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ pdf. Для этого процСсса Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° динамичСская Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° DynaPDF.

DynaPDF

DynaPDF – ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ инструмСнт. Π€ΠΎΡ€ΠΌΠ°Ρ‚ .dll хотя ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ достаточно ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности, пСриодичСски становится ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ возникновСния ошибок.

Для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ устранСния ошибок Π² сСти Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹Ρ… инструкций.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для программирования Π½Π° языках C/C++, C#, Delphi, Lazarus, PHP, VB, VBA, and VB .Net.

Π Π°Π±ΠΎΡ‚Π° с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…

Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ нуТдаСтся Π²ΠΎ взаимодСйствии с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. ΠžΡ‚Ρ‚ΡƒΠ΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ΡΡ ΠΈ Ρ‚ΡƒΠ΄Π° ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒΒ  Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΎΠ΄Π°Ρ‚Π΅Π»Π΅ΠΉ интСрСсуСт ΡƒΠΌΠ΅Π½ΠΈΠ΅ соискатСлСй Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

Libpq

Libpq – удобная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для взаимодСйствия Π‘ ΠΈ PosgreSQL. Благодаря Π΅ΠΉ ΠΈΠ· ΠΊΠΎΠ΄Π° Π‘ ΠΌΠΎΠΆΠ½ΠΎ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈ Π±Π΅Π·Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π½ΠΎ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΈ libpq для C++, Python’a, Perl’a, Tcl, ECPG.

ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΈ тСстированиС

Π•Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ Π²Π°ΠΆΠ½Ρ‹ΠΉ пласт Π·Π½Π°Π½ΠΈΠΉ для программиста – ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΈ тСстированиС ΠΊΠΎΠ΄Π°. Π—Π½Π°Π½ΠΈΠ΅ спСцифичСских Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, сущСствСнно упростит Π’Π°ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ этой Π·Π°Π΄Π°Ρ‡ΠΈ, Π° ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ наглядно продСмонстрируСт ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ вашСго профСссионализма.

Check

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Check ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ тСстирования всСх возмоТностСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, написанных Π½Π° языкС Π‘. БущСствСнным плюсом использования Check’а слуТит Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ запуска тСстов Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… процСссах для Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠΉ диагностики ΠΏΡ€ΠΈΡ‡ΠΈΠ½ возникновСния ошибок, сниТСния скорости ΠΈ Ρ‚.ΠΏ

Для ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ тСстирования Π½Π° языкС Π‘++ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Google C++ Testing Framework (Google Test).

Β 

Pcap

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠΉ Π½Π° ΡΠ΅Ρ‚Π΅Π²ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚Ρƒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, составлСния ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ΠΎΠ²Ρ‹Ρ… ΠΎΡ‚Ρ‡Ρ‘Ρ‚ΠΎΠ² ΠΈ Ρ‚.ΠΏ.

Pcap ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π‘ ΠΈ Π‘++. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΊΠΈ, Π΄Π΅Π»Π°ΡŽΡ‰ΠΈΠ΅ эту Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ доступной для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… языках программирования.

Π•Ρ‰Ρ‘ Π’Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡβ€¦

Libusb

Libusb β€” это Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, которая позволяСт ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с USB-устройствами прямо ΠΈΠ· ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ всС Ρ‚ΠΈΠΏΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ (ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ / объСм / ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ / ΠΈΠ·ΠΎΡ…Ρ€ΠΎΠ½Π½ΠΎΡΡ‚ΡŒ). Π’Π°ΠΆΠ½Ρ‹ΠΉ элСмСнт Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ – ΠΆΡƒΡ€Π½Π°Π» сообщСний. Он ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄Ρ‹ ошибок, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠ΅ ΠΎΡ‚ USB- устройств.

ΠŸΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π‘. Для Π΄Ρ€ΡƒΠ³ΠΈΡ… языков программирования Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΊΠΈ. Для Π‘++ β€”Β  Libusbpp

ZBar

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ZBar ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для распознавания ΡˆΡ‚Ρ€ΠΈΡ…ΠΊΠΎΠ΄ΠΎΠ² ΠΈΠ· ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ.

ZBar ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ ΠΈ Π»ΠΎΠ³ΠΈΡ‡Π½ΡƒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ Π±Π΅Π· Β«Ρ‚Ρ‘ΠΌΠ½ΠΎΠΉ ΠΌΠ°Π³ΠΈΠΈΒ» ΠΈ Π½Π΅ΠΎΠ±ΡŠΡΡΠ½ΠΈΠΌΡ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

Π Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½Π΅ΠΉ Π»Π΅Π³ΠΊΠΎ ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… интСрфСйсов Π‘, Π‘++, ΠŸΠΈΡ‚ΠΎΠ½Π° ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… языков программирования.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ описанных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈ ΠΏΠΎΠ΄ Windows, ΠΈ ΠΏΠΎΠ΄ Linux, ΠΈ ΠΏΠΎΠ΄ macOS, ΠΈ ΠΏΠΎΠ΄ BSD. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ Ρ‚Π΅Ρ…Π½ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, Π° ΠΊΠΎΠΌΡŒΡŽΠ½ΠΈΡ‚ΠΈ Π³ΠΎΡ‚ΠΎΠ²ΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ ΠΏΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹ΠΌΠΈ инструкциями ΠΏΠΎ установкС ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° Π»ΡŽΠ±Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ вопросы.

Π£ΠΌΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ – Π²Π°ΠΆΠ½Ρ‹ΠΉ Π½Π°Π²Ρ‹ΠΊ для любого программиста. Π­Ρ‚ΠΎ своСобразный ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π΅Π³ΠΎ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ уровня ΠΈ понимания процСсса Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ мноТСство слоТных Π·Π°Π΄Π°Ρ‡, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΊΠΎΠ΄Π°. Π§Π΅ΠΌ тСснСС Π’Ρ‹ с Π½ΠΈΠΌΠΈ Β«ΠΏΠΎΠ΄Ρ€ΡƒΠΆΠΈΡ‚Π΅ΡΡŒΒ», Ρ‚Π΅ΠΌ ΡˆΠΈΡ€Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΡ€ΡƒΠ³ Π²Π°ΡˆΠΈΡ… ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй.

НС Π±ΠΎΠΉΡ‚Π΅ΡΡŒ Π½ΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ – ΠΈΡ‰ΠΈΡ‚Π΅ ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅.

ΠŸΠΈΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ΄, тСстируйтС ΠΈ ΠΎΡ‚Ρ‚Π°Ρ‡ΠΈΠ²Π°ΠΉΡ‚Π΅ Π΅Π³ΠΎ Π΄ΠΎ блСска. А ΠΊΠΎΠΌΠ°Π½Π΄Π° progtips.ru всСгда ΠΏΡ€ΠΈΠ΄Ρ‘Ρ‚ Π’Π°ΠΌ Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ!

АНОНБ

Π’Ρ‹ Π΄ΡƒΠΌΠ°Π΅Ρ‚Π΅, это всС ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ? НСт! На дСсСрт ΠΌΡ‹ оставили самоС интСрСсноС.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ выпускС Вас ΠΆΠ΄ΡƒΡ‚:

β€” Π»ΡƒΡ‡ΡˆΠΈΠ΅ графичСскиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для Π‘++;

β€” Ρ‡Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ Π² России ΠΈ Π½Π° Π—Π°ΠΏΠ°Π΄Π΅;

ΠΈ ΠΊΠ°ΠΊ ΠΏΠΎ графичСской Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π»ΡŽΠ±ΠΈΡ‚Π΅Π»Ρ ΠΎΡ‚ профСссионала.

Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка Π‘ΠΈ — это… Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка Π‘ΠΈ?

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ языка Π‘ΠΈ (Ρ‚Π°ΠΊΠΆΠ΅ извСстная ΠΊΠ°ΠΊ libc, crt) называСтся Ρ‡Π°ΡΡ‚ΡŒ стандарта ANSI C, посвящСнная Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹ΠΌ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌ. ЯвляСтся описаниСм Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ±Ρ‰ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈ строк, Π² языкС программирования Π‘ΠΈ. Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка Π‘ΠΈΒ β€” это описаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ интСрфСйса, Π° Π½Π΅ настоящая Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, пригодная для использования Π² процСссС компиляции.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°

Имя ΠΈ характСристики ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² Ρ„Π°ΠΉΠ»Π΅, ΠΈΠΌΠ΅Π½ΡƒΠ΅ΠΌΡ‹ΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ, Π½ΠΎ тСкущая рСализация Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ описана ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. НаимСнованиС ΠΈ возмоТности Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² становятся ΠΎΠ±Ρ‰ΠΈΠΌΠΈ, Π½ΠΎ организация Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ остаСтся Ρ€Π°Π·Π½ΠΎΡ‚ΠΈΠΏΠ½ΠΎΠΉ. Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ поставляСтся вмСстС с компилятором. Π’Π°ΠΊ ΠΊΠ°ΠΊ компиляторы языка Π‘ΠΈ часто ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ стандартом ANSI C, стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΎΠ΄Π½ΠΎΠ³ΠΎ компилятора нСсовмСстима со стандартными Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… компиляторов.

МнСния ΠΎ структурС

Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка Π‘ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅ ΡƒΠ΄Π°Ρ‡Π½ΠΎ спроСктированной. НСкоторыС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ части, дававшиС прСимущСство Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΠ²ΠΎΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ошибки. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ строкового Π²Π²ΠΎΠ΄Π° gets() (ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ scanf() для считывания Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… строк) ΡΠ²Π»ΡΡŽΡ‚ΡΡ источником мноТСства ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ Π±ΡƒΡ„Π΅Ρ€Π°, поэтому Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ руководств ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽΡ‚ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ΅ΠΌΠΎΠ². Ѐункция strcpy() Ρ‚Π°ΠΊΠΆΠ΅ вСсьма ΠΏΠ΅Ρ‡Π°Π»ΡŒΠ½ΠΎ Π·Π½Π°ΠΌΠ΅Π½ΠΈΡ‚Π°. Π•Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎΠΉ Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ являСтся strtok()Β β€” функция, разработанная ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ лСксичСский Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€, Π½ΠΎ ΠΈΠΌΠ΅ΡŽΡ‰Π°Ρ мноТСство Β«ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½Ρ‹Ρ… ΠΊΠ°ΠΌΠ½Π΅ΠΉΒ» ΠΈ ΠΏΠΎΡ‚ΠΎΠΌΡƒ вСсьма трудная Π² использовании.

Π’Ρ‹Π±ΠΎΡ€ примСнСния Ρ‚ΠΈΠΏΠ° size_t вмСсто int для числа элСмСнтов, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… для fread() ΠΈ fwrite() являСтся нСсовмСстимым с Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ ΠΎΠ±Ρ‰Π΅ΠΉ сСмантикой для size_t (для прСдставлСния количСства Π±Π°ΠΉΡ‚ΠΎΠ²).[источник нС указан 506Β Π΄Π½Π΅ΠΉ]

stdio достаточно ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ (слишком высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ для использования Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ситуациях) ΠΈ стандарт Π½Π΅ позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π½Π°Π·Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒ Π΅Π³ΠΎ свойства. Π’ ΠΈΡ‚ΠΎΠ³Π΅, для мноТСства ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ собствСнныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ-ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠΈ Π²ΠΎΠΊΡ€ΡƒΠ³ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ОБ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ POSIX. НапримСр, stdio Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с сигналами ΠΈΠ»ΠΈ асинхронными Π½Π΅ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΌΠΈ Ρ€Π΅ΠΆΠΈΠΌΠ°ΠΌΠΈ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² сСтСвых сСрвСрах. Π’ ΠΈΡ‚ΠΎΠ³Π΅, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сСрвСры, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ модСль Ρ†Π΅Π»ΠΎΠ³ΠΎ процСсса для ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ stdio для обслуТивания ΠΈΡ… Π½Π° POSIX-совмСстимых систСмах Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠŸΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ контроля ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π°Π»ΠΈΡΡŒ для ΠΎΡΡ‚Π°Π²ΡˆΠ΅ΠΉΡΡ части ОБ ΠΈ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ ΠΎΠ±Ρ‰ΠΈΠ΅ стандарты, ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² POSIX, оТидая, Ρ‡Ρ‚ΠΎ программисты языка Π‘ΠΈ, ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ± этом позаботятся работая с ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹ΠΌ использованиСм ΠΈ синхронизациСй. Ни язык Π‘ΠΈ, Π½ΠΈ Π΅Π³ΠΎ стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ систСмноспСцифичныС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹.

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ

Π―Π·Ρ‹ΠΊ программирования Π‘ΠΈ Π΄ΠΎ стандартизации Π½Π΅ обСспСчивал встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° (Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ‚Π°ΠΊΠΈΡ… Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… языков, ΠΊΠ°ΠΊ Кобол ΠΈ Π€ΠΎΡ€Ρ‚Ρ€Π°Π½). ПозТС, Π² сообщСствС программистов, Ρ€Π°Π±ΠΎΡ‚Π°Π²ΡˆΠΈΡ… с языком Π‘ΠΈ, Π·Π°Ρ€ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ ΠΈΠ΄Π΅ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈΡΡŒ Π² Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ сСйчас Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ языка Π‘ΠΈ, для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ этих ΠΈΠ΄Π΅ΠΉ Π² ΠΈΡ‚ΠΎΠ³Π΅ объСдинились Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ стандарта языка программирования Π‘ΠΈ.

И Unix, ΠΈ Π‘ΠΈ Π±Ρ‹Π»ΠΈ созданы Π² AT&T’s Bell Laboratories Π² ΠΊΠΎΠ½Ρ†Π΅ 1960-Ρ… β€” Π½Π°Ρ‡Π°Π»Π΅ 1970-Ρ…. Π’ 1970-Π΅ язык программирования Π‘ΠΈ Π½Π°Ρ‡Π°Π» ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ нСвСроятной ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒΡŽ. ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ унивСрситСтов ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΉ Π½Π°Ρ‡Π°Π»ΠΈ созданиС собствСнных Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² языка, Π±ΠΎΠ»Π΅Π΅ подходящих для собствСнных Π½ΡƒΠΆΠ΄. Π‘ Π½Π°Ρ‡Π°Π»ΠΎΠΌ 1980-Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ совмСстимости ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ рСализациями языка Π‘ΠΈ стали слишком ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌΠΈ. Π’ 1983 Π³ΠΎΠ΄Ρƒ АмСриканский Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ институт стандартов (ANSI) сформировал ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚ для принятия стандарта языка Π‘ΠΈ, извСстный ΠΊΠ°ΠΊ Β«ANSI Π‘ΠΈΒ». Π­Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π° Π²Ρ‹Π»ΠΈΠ»Π°ΡΡŒ Π² созданиС Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ стандарта C89 Π² 1989. Π§Π°ΡΡ‚ΡŒ ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ стандарта Π±Ρ‹Π»Π° Π½Π°Π±ΠΎΡ€ΠΎΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, названная Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ANSI Π‘ΠΈ.

ΠŸΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ вСрсии стандарта языка Π‘ΠΈ добавляли Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΠΎΠ²Ρ‹Π΅ ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° этих Π½ΠΎΠ²Ρ‹Ρ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ зависСла ΠΎΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ <iso646.h>, <wchar.h> ΠΈ <wctype.h> Π±Ρ‹Π»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π² ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ 1 (сокращСнно NA1) β€” Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΊ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρƒ языка Π‘ΠΈ, Ρ€Π°Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ Π² 1995.

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ <complex.h>, <fenv.h>, <inttypes.h>, <stdbool.h>, <stdint.h> ΠΈ <tgmath.h> Π±Ρ‹Π»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π² C99, вСрсии Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π° языка Π‘ΠΈ, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠΌ Π² 1999.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ ANSI

Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ANSI Π‘ΠΈ состоит ΠΈΠ· 24 Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΠ΄Π½ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» содСрТит объявлСния ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, опрСдСлСния Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ макросы. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ этих Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² пСрСчисляСтся Π½ΠΈΠΆΠ΅.

Π’ сравнСнии с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ языками (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Java) стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΊΡ€Π°ΠΉΠ½Π΅ ΠΌΠ°Π»Π°. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° обСспСчиваСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ основного Π½Π°Π±ΠΎΡ€Π° матСматичСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ строк, ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΡŽ Ρ‚ΠΈΠΏΠΎΠ², Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ ΠΈ ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄. Она Π½Π΅ содСрТит стандартный Π½Π°Π±ΠΎΡ€ Β«ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ²Β» ΠΊΠ°ΠΊ стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° шаблонов языка C++, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с графичСским ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ интСрфСйсом (GUI), ΡΠ΅Ρ‚ΡŒΡŽ ΠΈ ΠΏΡ€ΠΎΡ‡Π΅ΠΉ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎ стандарту. Π“Π»Π°Π²Π½Ρ‹ΠΌ прСимущСством малСнькой стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ являСтся ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ ANSI Π‘ΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ языками, Π° ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ портирования ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° языкС Π‘ΠΈ Π½Π° Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π±Ρ‹Π»ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ΠΎ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ схоТСй Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, обСспСчиваСмой Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ языками Π² ΠΈΡ… стандартных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ…. НапримСр, Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ окруТСния Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ стола GNOME Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π½Π°Π±ΠΎΡ€ графичСских инструмСнтов GTK+ ΠΈ GLibΒ β€” Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π½Ρ‹Ρ… структур Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠ°ΠΊ Π²ΠΏΡ€ΠΎΡ‡Π΅ΠΌ ΠΈ мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… извСстных ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ². Π Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ доступных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ инструмСнты Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня, со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΠ»ΠΈ свою ΠΏΠΎΠ»Π΅Π·Π½ΠΎΡΡ‚ΡŒ. Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ минусом являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ часто Π½Π΅ слишком ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ, поэтому программистам Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Π½Π°Π±ΠΎΡ€Π°ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π° ΠΈΡ… Π½Π°Π±ΠΎΡ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ доступны Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… спСцифичСских ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ….

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ANSI Π‘ΠΈ

<assert.h>Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ макрос ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для обнаруТСния логичСских ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² ошибок Π² ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΉ вСрсии ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.
<complex.h>Набор Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с комплСксными числами. (Появилось Π² C99)
<ctype.h>Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для классификации символов ΠΏΠΎ ΠΈΡ… Ρ‚ΠΈΠΏΠ°ΠΌ ΠΈΠ»ΠΈ для ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π΅Ρ€Ρ…Π½ΠΈΠΌ ΠΈ Π½ΠΈΠΆΠ½ΠΈΠΌ рСгистрами нСзависимо ΠΎΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ASCII ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π΅Ρ‘ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ, хотя Π΅ΡΡ‚ΡŒ ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ EBCDIC).
<errno.h>Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΠΎΠ΄ΠΎΠ² ошибок, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹ΠΌΠΈ функциями.
<fenv.h>Для управлСния срСдой, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅ΠΉ числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой. (Появилось Π² C99)
<float.h>Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ константы, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ спСцифику Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ свойств Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с числами с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, минимальная Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ числами с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ (_EPSILON), максимальноС число Ρ†ΠΈΡ„Ρ€ точности (_DIG) ΠΈ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ допустимых чисСл (_MIN, _MAX).
<inttypes.h>Для Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ Ρ†Π΅Π»Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ². (Появилось Π² C99)
<iso646.h>Для программирования Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ ISO 646. (Появилось Π² NA1)
<limits.h>Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ Π·Π°Ρ€Π°Π½Π΅Π΅ Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ константы, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠ΅ спСцифику Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ свойств Ρ†Π΅Π»Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ², ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ±Π»Π°ΡΡ‚ΡŒ допустимых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (_MIN, _MAX).
<locale.h>Для setlocale() ΠΈ связанных констант. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²Ρ‹Π±ΠΎΡ€Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ языка.
<math.h>Для вычислСния основных матСматичСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ
<setjmp.h>ΠžΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ макросы setjmp ΠΈ longjmp, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для Π½Π΅Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ²
<signal.h>Для управлСния ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ сигналов
<stdarg.h>Для доступа ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠΌΡƒ числу Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… функциям.
<stdbool.h>Для Π±ΡƒΠ»Π΅Π²Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. (Появилось Π² C99)
<stdint.h>Для опрСдСлСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Ρ†Π΅Π»Ρ‹Ρ… чисСл. (Появилось Π² C99)
<stddef.h>Для опрСдСлСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… стандартных Ρ‚ΠΈΠΏΠΎΠ² ΠΈ макросов.
<stdio.h>Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ основныС возмоТности Π²Π²ΠΎΠ΄Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° Π² языкС Π‘ΠΈ. Π­Ρ‚ΠΎΡ‚ Ρ„Π°ΠΉΠ» содСрТит вСсьма Π²Π°ΠΆΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ printf.
<stdlib.h>Для выполнСния мноТСства ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΡŽ, Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΡŽ псСвдослучайных чисСл, Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ процСссов, окруТСния, сигналов, поиска ΠΈ сортировки.
<string.h>Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Π²ΠΈΠ΄Π°ΠΌΠΈ строк.
<tgmath.h>Для Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… матСматичСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. (Появилось Π² C99)
<time.h>Для ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°ΠΌΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ Π΄Π°Ρ‚Ρ‹.
<wchar.h>Для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Β«ΡˆΠΈΡ€ΠΎΠΊΠΈΡ…Β» ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²ΠΈΠ΄ΠΎΠ² строк ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Β«ΡˆΠΈΡ€ΠΎΠΊΠΈΡ…Β» символов (ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π°Π±ΠΎΡ€Π° языков). (Появилось Π² NA1)
<wctype.h>Для классификации Β«ΡˆΠΈΡ€ΠΎΠΊΠΈΡ…Β» символов. (Появилось Π² NA1)

Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π‘ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках

НСкоторыС языки ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π‘ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ своих собствСнных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° для структур языка, Π½ΠΎ сСмантика ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ остаСтся схоТСй. Π―Π·Ρ‹ΠΊ программирования C++, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, содСрТит Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ANSI Π‘ΠΈ Π² пространствС ΠΈΠΌΠ΅Π½ std (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, std::printf, std::atoi, std::feof ΠΈΒ Ρ‚.Β Π΄.), Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… со схоТими ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΊΠ°ΠΊ Π² Π‘ΠΈ (Β«cstdioΒ», Β«cmathΒ», Β«cstdlibΒ» ΠΈΒ Ρ‚.Β Π΄.). К Π΄Ρ€ΡƒΠ³ΠΈΠΌ языкам, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ схоТиС ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ относятся, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, D ΠΈ Python. Π’ послСднСм, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, встроСнный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ file ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΊΠ°ΠΊ Β«Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π° stdio языка Π‘ΠΈΒ»[1], Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ доступныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅, Ρ‡Ρ‚Π΅Π½ΠΈΠ΅, запись ΠΈΒ Ρ‚.Β Π΄.), ΠΊΠ°ΠΊ оТидаСтся, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ Ρƒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Ρ„ΡƒΠ½ΠΊΠΈΠΉ языка Π‘ΠΈ.

ΠžΠ±Ρ‰Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

Пока Π½Π΅ стандартизировано, Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС Π‘ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат ΠΊΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ компилятором Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹. Код, ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ процСсс для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ main(), Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ исполнСния языка Π‘ΠΈ (C Run-Time Library, CRT) для Π΄Π°Π½Π½ΠΎΠΉ вСрсии компилятора. Код Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ CRT ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π΄Ρ€ΡƒΠ³ΠΈΡ… особСнностСй языка, ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π΅ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ рСализация Ρ€Π°Π±ΠΎΡ‚Ρ‹ с числами с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ.

Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка Π‘ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π²Ρ‹ΡˆΠ΅ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚Ρ‹Ρ… ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ ΠΈΡ… ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅. Π’Π°ΠΊ ΠΊΠ°ΠΊ рСализация компилятора ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ наличия этих Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Ρ‚ΠΎ всС зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ собраны Π² Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ языка Π‘ΠΈ, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ любая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, разработанная с ΠΈΡ… ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ, Π±ΡƒΠ΄Π΅Ρ‚ Π½ΡƒΠΆΠ΄Π°Ρ‚ΡŒΡΡ Π² Π½ΠΈΡ….

Π₯отя часто ΠΏΡƒΡ‚Π°ΡŽΡ‚ ΠΈΡ… со Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ языка Π‘ΠΈ ΠΈΠ·-Π·Π° ΠΈΡ… ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π°Ρ†ΠΈΠΈ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° CRT Π½Π΅ являСтся стандартизированной Ρ‡Π°ΡΡ‚ΡŒΡŽ языка ΠΈ зависит ΠΎΡ‚ особСнностСй поставки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°.

ВстроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ компилятора

НСкоторыС компиляторы (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, GCC[1]) ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ вСрсии мноТСства Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка Π‘ΠΈ; Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ вСрсии вмСсто Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ±Ρ‰Π΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π‘ΠΈ. Π­Ρ‚ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, особСнно Ссли Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ замСняСтся встроСнными Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ, ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ использованиС Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ„ΠΎΡ€ΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ (Ссли компилятор ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ характСристиками Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²), Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ ΠΏΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ вСрсии Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ вСрсиями для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ).

Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° POSIX

POSIX (ΠΈ SUS) ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ число ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ доступны ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π² Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ языка Π‘ΠΈ; ΠΎΠ½ΠΈ часто Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ со Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ с Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠΉ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒΡŽ схоТСсти. НапримСр, glibc Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Ρ‚Π°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ fork Π² libc.so, Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² glibc, хотя это заявлСно ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° с собствСнным Ρ„Π»Π°Π³ΠΎΠΌ Π»ΠΈΠ½ΠΊΠΎΠ²Ρ‰ΠΈΠΊΠ°. Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ, такая POSIX-совмСстимая Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ рассматриваСтся ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ; ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π‘ΠΈ, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π° ΠΊΠ°ΠΊ ANSI ΠΈΠ»ΠΈ ISO Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка Π‘ΠΈ.

Π Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

БущСствуСт мноТСство Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ, поставляСмых ΠΊΠ°ΠΊ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ систСмами, Ρ‚Π°ΠΊ ΠΈ с компиляторами языка Π‘ΠΈ. На BSD систСмах, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, систСмная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° встроСна Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму ΠΈ поддСрТиваСтся ΠΎΠ±Ρ‰ΠΈΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ исходников. На Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ систСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π°ΠΉΠ΄Π΅Π½Π° ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«libcΒ».

Π₯отя сущСствуСт ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ, Π²ΠΎΡ‚ нСбольшой список самых популярных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ:

  • GNU C LibraryΒ β€” самая распространСнная рСализация, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ Π² Linux
  • Microsoft C Run-time Library
  • dietlibcΒ β€” Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Π°Ρ нСбольшая рСализация Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка Π‘ΠΈ
  • uClibcΒ β€” Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка Π‘ΠΈ для встраиваСмых систСм Π½Π° Π±Π°Π·Π΅ Linux (MMU-less)
  • NewlibΒ β€” Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка Π‘ΠΈ для встраиваСмых систСм (MMU-less)[2]
  • klibcΒ β€” примСняСтся Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Linux-систСм.
  • eglibc β€” Ρ€Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ glibc для встраиваСмых систСм.

Π‘ΠΌ. Ρ‚Π°ΠΊΠΆΠ΅

Бсылки

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ источники

Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка C++ — это… Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка C++?

Π’ языкС программирования C++ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Бтандартная Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ классов ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, написанных Π½Π° Π±Π°Π·ΠΎΠ²ΠΎΠΌ языкС. Бтандартная Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ нСсколько основных ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ², Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с этими ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, основных Ρ‚ΠΈΠΏΠΎΠ² строк ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… языковых особСнностСй, ΠΈ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для выполнСния Ρ‚Π°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ корня числа. Бтандартная Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка C++ Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя спСцификации стандарта ISO C90 стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка Π‘ΠΈ. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ особСнности Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΉ Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΎΠ±ΡŠΡΠ²Π»ΡΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ пространства ΠΈΠΌΠ΅Π½ std.

Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° шаблонов (STL)Β β€” подмноТСство стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ C++ ΠΈ содСрТит ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΒ Ρ‚.Β Π΄.[источник нС указан 1011Β Π΄Π½Π΅ΠΉ] Π₯отя Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ программисты ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Β«STLΒ» вмСсто (ΠΈΠ»ΠΈ ΠΏΠΎΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ) с Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠΌ «Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° C++Β».

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ C++ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Β«.hΒ».

Π’ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ C++Β β€” послСдниС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ C++ стандарта ANSI (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ стандартных шаблонов ΠΈ Π½ΠΎΠ²ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ iostream). Она прСдставляСт собой Π½Π°Π±ΠΎΡ€ Ρ„Π°ΠΉΠ»ΠΎΠ² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². Π’ Π½ΠΎΠ²Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² отсутствуСт Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ H.[1]

Начиная с Visual Studio .NET 2003, Visual C++ большС Π½Π΅ прСдоставляСт старыС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ iostream[1]

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹

НиТСпСрСчислСнныС Ρ„Π°ΠΉΠ»Ρ‹ содСрТат объявлСния Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΉ Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹

<bitset>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ спСциализированный класс ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² std::bitsetΒ β€” Π±ΠΈΡ‚ΠΎΠ²Ρ‹ΠΉ массив.
<deque>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ шаблон класса ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° std::dequeΒ β€” ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ с двусторонним доступом.
<list>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ шаблон класса ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° std::listΒ β€” двусвязный список.
<map>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ классов ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² std::map ΠΈ std::multimapΒ β€” Ассоциативный массив ΠΈ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.
<queue>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ класс Π°Π΄Π°ΠΏΡ‚Π΅Ρ€-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° std::queueΒ β€” односторонняя ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ.
<set>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ классов ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² std::set ΠΈ std::multisetΒ β€” сортированныС ассоциативныС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ ΠΈΠ»ΠΈ мноТСства.
<stack>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ класс Π°Π΄Π°ΠΏΡ‚Π΅Ρ€-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° std::stackΒ β€” стСк.
<vector>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ шаблон класса ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² std::vectorΒ β€” динамичСский массив.

ΠžΠ±Ρ‰ΠΈΠ΅

<algorithm>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ опрСдСлСния ΠΌΠ½ΠΎΠ³ΠΈΡ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ.
<functional>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ нСсколько ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со стандартными Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌΠΈ.
<iterator>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ классы ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ.
<locale>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ классы ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с локалями.
<memory>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ инструмСнты управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Π² C++, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ шаблон класса std::auto_ptr.
<stdexcept>
Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ошибок классов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, std::logic_error ΠΈ std::runtime_error, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΠΎΠ±Π° происходят ΠΈΠ· std::exception.
<utility>
Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ шаблон класса std::pair для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠ°Ρ€Π°ΠΌΠΈ (Π΄Π²ΡƒΡ‡Π»Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅

<string>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ стандартныС строковыС классы ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹.

ΠŸΠΎΡ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΈ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°

<fstream>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ инструмСнты для Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π°. Π‘ΠΌΠΎΡ‚Ρ€ΠΈ fstream.
<ios>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ нСсколько Ρ‚ΠΈΠΏΠΎΠ² ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… основу ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с iostreams.
<iostream>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ основы Π²Π²ΠΎΠ΄Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° языка C++. Π‘ΠΌΠΎΡ‚Ρ€ΠΈ iostream.
<iosfwd>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ объявлСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… шаблонов классов, связанных с Π²Π²ΠΎΠ΄ΠΎΠΌ-Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ.
<iomanip>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ инструмСнты для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π±Π°Π·Ρƒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡƒΡŽ ΠΏΡ€ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ†Π΅Π»Ρ‹Ρ… ΠΈ Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ чисСл с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой.
<istream>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ шаблон класса std::istream ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… классов для Π²Π²ΠΎΠ΄Π°.
<ostream>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ шаблон класса std::ostream ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… классов для Π²Ρ‹Π²ΠΎΠ΄Π°.
<sstream>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ шаблон класса std::sstream ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… классов для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками.
<streambuf>

ЧисловыС

<complex>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ шаблон класса std::complex ΠΈ связанныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с комплСксными числами.
<numeric>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ для числовой ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
<valarray>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ шаблон класса std::valarrayΒ β€” класс массивов, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ для числовой ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Языковая ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°

<exception>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ нСсколько Ρ‚ΠΈΠΏΠΎΠ² ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, связанных с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ std::exceptionΒ β€” Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс всСх ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΎΠ² ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π² Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΉ Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅.
<limits>
Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ шаблон класса std::numeric_limits, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для описания свойств Π±Π°Π·ΠΎΠ²Ρ‹Ρ… числовых Ρ‚ΠΈΠΏΠΎΠ².
<new>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ new ΠΈ delete, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Ρ‚ΠΈΠΏΡ‹, ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ основу управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Π² C++.
<typeinfo>
Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ инструмСнты для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с динамичСской ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π² C++.

Бтандартная Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка Π‘ΠΈ

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈΠ· стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка Π‘ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ языка C++ ΠΏΠΎΠ΄ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, созданных ΠΏΡƒΡ‚Π΅ΠΌ отсСчСния Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ .h ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ‘c’ Π² Π½Π°Ρ‡Π°Π»Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ‘time.h’ стал ‘ctime’. ЕдинствСнноС ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ этими Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΌΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΌΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка Π‘ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½Ρ‹ Π² пространство ΠΈΠΌΠ΅Π½ std:: (хотя Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ компиляторы сами Π΄Π΅Π»Π°ΡŽΡ‚ это). Π’ стандартС ISO C Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Ρ‹ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ макросами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Ρ‹ Π² ISO C++.

Π‘ΠΌ. Ρ‚Π°ΠΊΠΆΠ΅

Π›ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π°

Бсылки

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° C

— Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ C ++

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° C ++ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ‚Π΅ ΠΆΠ΅ опрСдСлСния, Ρ‡Ρ‚ΠΎ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка C, организованная Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ структурС Ρ„Π°ΠΉΠ»ΠΎΠ² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ отличиями:

  • ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎ ΠΆΠ΅ имя, Ρ‡Ρ‚ΠΎ ΠΈ вСрсия языка C, Π½ΠΎ с прСфиксом «c» ΠΈ Π±Π΅Π· Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅. НапримСр, эквивалСнт C ++ для Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° языка C — это .
  • ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π² пространствС ΠΈΠΌΠ΅Π½ std.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, для совмСстимости с C, Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ΅ имя Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°.h (ΠΊΠ°ΠΊ ΠΈ stdlib.h) Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚Π΅ ΠΆΠ΅ опрСдСлСния Π² глобальном пространствС ΠΈΠΌΠ΅Π½. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π² этом справочникС, эта вСрсия ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, поэтому ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ совмСстимы с C, хотя Π² C ++ Π΅Π΅ использованиС Π½Π΅ рСкомСндуСтся.

Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ измСнСния Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ C ++:

  • wchar_t, char16_t, char32_t ΠΈ bool ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π² C ++ ΠΈ поэтому Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅, Π³Π΄Π΅ ΠΎΠ½ΠΈ ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π² C. Π’ΠΎ ΠΆΠ΅ самоС относится ΠΊ нСскольким макросам Π² C ++. Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ словами Π² C ++.
  • Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ измСнСния Π² своих ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΡΡ…, связанных с постоянством ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²: strchr, strpbrk, strrchr, strstr, memchr.
  • Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ atexit, exit ΠΈ abort, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² , ΠΈΠΌΠ΅ΡŽΡ‚ дополнСния ΠΊ своСму повСдСнию Π² C ++.
  • ΠŸΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹ΠΌ вСрсиям Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ Ρ‚Π° ΠΆΠ΅ сСмантика, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, вСрсии Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой ΠΈ Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° cmath ΠΈΠ»ΠΈ Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ вСрсии для abs ΠΈ div.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ ΠΊ исполнСнию

C ++ 98 Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ C, ΠΊΠ°ΠΊ описано Π² стандартС ISO C 1990 Π³ΠΎΠ΄Π° ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠΏΡ€Π°Π²ΠΊΠ΅ β„– 1 (ISO / IEC 9899: 1990 ΠΈ ISO / IEC 9899: 1990 / DAM 1).

C ++ 11 Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ C, ΠΊΠ°ΠΊ описано Π² стандартС ISO C 1999 Π³. ΠΈ Π΅Π³ΠΎ ВСхничСских исправлСниях 1, 2 ΠΈ 3 (ISO / IEC 9899: 1999 ΠΈ ISO / IEC 9899: 1999 / Cor.1,2,3), плюс (согласно ISO / IEC 19769: 2004).

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ввСдСния стандарта ISO C 2011 Π³ΠΎΠ΄Π° нСсовмСстимы с C ++.

.

ИспользованиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ C для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° C ++

ΠŸΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ стСка

  1. Около
  2. ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹

  3. Для ΠΊΠΎΠΌΠ°Π½Π΄
  1. ΠŸΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ стСка
    ΠžΠ±Ρ‰Π΅ΡΡ‚Π²Π΅Π½Π½Ρ‹Π΅ вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹

  2. ΠŸΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ стСка для ΠΊΠΎΠΌΠ°Π½Π΄
    Π“Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈ дСлятся частными знаниями с ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ

  3. Вакансии
    ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ связанныС с Π½ΠΈΠΌ тСхничСскиС возмоТности ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Π½ΠΎΠ³ΠΎ роста

  4. Π’Π°Π»Π°Π½Ρ‚
    НанимайтС тСхничСских спСциалистов ΠΈ создавайтС свой Π±Ρ€Π΅Π½Π΄ работодатСля

  5. Π Π΅ΠΊΠ»Π°ΠΌΠ°
    ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³Π°ΠΌ со всСго ΠΌΠΈΡ€Π°

  6. О компании

.

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ C ++ — cppreference.com

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ C ++ опрСдСляСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠ΅ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ².

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π°Ρ‚ΠΎΠΌΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ

Π—Π°Ρ‰Π΅Π»ΠΊΠΈ

Для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ C Π²ΠΈΠ΄Π° xxx.h стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° C ++ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ„ΠΎΡ€ΠΌΡ‹ cxxx (всС Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ cxxx пСрСчислСны Π²Ρ‹ΡˆΠ΅).

Π—Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ complex.h, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ xxx.h, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ Π² ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ C ++, ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π² глобальноС пространство ΠΈΠΌΠ΅Π½ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ имя, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ cxxx помСстил Π±Ρ‹ Π² пространство ΠΈΠΌΠ΅Π½ std.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° сопрограмм

Coroutine [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΡƒΡ‚ΠΈΠ»ΠΈΡ‚

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния: ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, распрСдСлСниС динамичСской памяти, случайныС числа, сортировка ΠΈ поиск [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ макроконстанты для управлСния сигналами [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠœΠ°ΠΊΡ€ΠΎΡ (ΠΈ функция), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сохраняСт (ΠΈ выполняСт ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄) Π² контСкст выполнСния [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° списков Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚ΠΈΠΏΠ°Ρ… Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: type_index [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ Ρ‚ΠΈΠΏΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ компиляции [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: bitset шаблон класса [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Π²Ρ‹Π·ΠΎΠ²Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ привязки ΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ ссылок [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ / Π΄Π°Ρ‚Ρ‹ Π² стилС C [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
C ++ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ макросы ΠΈ опрСдСлСния Ρ‚ΠΈΠΏΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: initializer_list шаблон класса [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: tuple шаблон класса [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: any class [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: optional class template [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: variant class template [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° трСхстороннСго сравнСния [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅, Π·Π°Π²ΠΈΡΡΡ‰ΡƒΡŽ ΠΎΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ срСдства для получСния мСстополоТСния исходного ΠΊΠΎΠ΄Π° [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ДинамичСскоС ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ
Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ управлСния Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ высокого уровня [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π’Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ класс распрСдСлитСля [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠŸΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„Π½Ρ‹Π΅ распрСдСлитСли ΠΈ рСсурсы памяти [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ЧисловыС ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹
ΠŸΡ€Π΅Π΄Π΅Π»Ρ‹ цСлочислСнных Ρ‚ΠΈΠΏΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠŸΡ€Π΅Π΄Π΅Π»Ρ‹ Ρ‚ΠΈΠΏΠΎΠ² с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ЦСлочислСнныС Ρ‚ΠΈΠΏΡ‹ фиксированной ΡˆΠΈΡ€ΠΈΠ½Ρ‹ ΠΈ ограничСния Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠœΠ°ΠΊΡ€ΠΎΡΡ‹ форматирования, intmax_t ΠΈ uintmax_t ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ° ΠΈ прСобразования [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π•Π΄ΠΈΠ½Ρ‹ΠΉ способ запроса свойств арифмСтичСских Ρ‚ΠΈΠΏΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок
Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Условно скомпилированный макрос, ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ свой Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ с Π½ΡƒΠ»Π΅ΠΌ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ std :: error_code, ΠΊΠΎΠ΄ ошибки, зависящий ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠœΠ°ΠΊΡ€ΠΎΡ, содСрТащий Π½ΠΎΠΌΠ΅Ρ€ послСднСй ошибки [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° строк

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ для опрСдСлСния ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ ΡƒΠ·ΠΊΠΈΡ… пСрсонаТСй [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ для опрСдСлСния ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΈΡ… символов [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строк с ΡƒΠ·ΠΊΠΈΠΌΠΈ символами [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΈΡ… ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Ρ… строк [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСобразования символов Unicode Π² стилС C [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
шаблон класса std :: basic_string [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: basic_string_view шаблон класса [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: to_chars ΠΈ std :: from_chars [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° форматирования, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ std :: format [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ²

std :: array container [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: vector ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ std :: deque [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: list ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ std :: forward_list [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ассоциативныС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ std :: set ΠΈ std :: multiset [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ассоциативныС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ std :: map ΠΈ std :: multimap [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: unordered_set ΠΈ std :: unordered_multiset нСупорядочСнныС ассоциативныС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: unordered_map ΠΈ std :: unordered_multimap нСупорядочСнныС ассоциативныС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° std :: stack [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Ρ‹ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° std :: queue ΠΈ std :: priority_queue [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: span view [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²

Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ²

Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ доступа, ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹, трСбования, ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΈ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Ρ‹ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²

Алгоритмы, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ с Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°ΠΌΠΈ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠŸΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ выполнСния для ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… вСрсий Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Числовая Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°

ΠžΠ±Ρ‰ΠΈΠ΅ матСматичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π’ΠΈΠΏ комплСксного числа [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Класс для прСдставлСния массивов Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ управлСния ΠΈΠΌΠΈ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π“Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΈ распрСдСлСния случайных чисСл [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ЧисловыС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ со значСниями Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°Ρ… [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ Π°Ρ€ΠΈΡ„ΠΌΠ΅Ρ‚ΠΈΠΊΠ° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ компиляции [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ доступа ΠΊ срСдС с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π±ΠΈΡ‚ΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ константы [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

[ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
C [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

(C ++ 11) (Π½Π΅ рСкомСндуСтся Π² C ++ 17)

срСдства прСобразования Unicode [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π°

ΠŸΡ€ΡΠΌΠΎΠ΅ объявлСниС всСх классов Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π° [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
класс std :: ios_base, шаблон класса std :: basic_ios ΠΈ нСсколько ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Ρ‚ΠΈΠΏΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
шаблон класса std :: basic_istream ΠΈ нСсколько ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Ρ‚ΠΈΠΏΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ классов std :: basic_ostream, std :: basic_iostream ΠΈ нСсколько ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Ρ‚ΠΈΠΏΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
НСсколько стандартных ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: basic_fstream, std :: basic_ifstream, std :: basic_ofstream ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ классов ΠΈ нСсколько ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Ρ‚ΠΈΠΏΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: basic_stringstream, std :: basic_istringstream, std :: basic_ostringstream ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ классов ΠΈ нСсколько ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Ρ‚ΠΈΠΏΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: basic_osyncstream, std :: basic_syncbuf ΠΈ typedefs [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: strstream, std :: istrstream, std :: ostrstream [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π’ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для управлСния Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠΌ Π²Π²ΠΎΠ΄Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
std :: basic_streambuf шаблон класса [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° Π² стилС C [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы

std :: path class ΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

ΠšΠ»Π°ΡΡΡ‹, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π°Ρ‚ΠΎΠΌΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ

[ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

std :: thread class ΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π‘Ρ‚ΠΎΠΏ-Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ для std :: jthread [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠŸΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ Π²Π·Π°ΠΈΠΌΠ½ΠΎΠ³ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠžΠ±Ρ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ Π²Π·Π°ΠΈΠΌΠ½ΠΎΠ³ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
ΠŸΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ для асинхронных вычислСний [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Условия оТидания ΠΏΠΎΡ‚ΠΎΠΊΠ° [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
сСмафоров [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
[ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]
Π±Π°Ρ€ΡŒΠ΅Ρ€ΠΎΠ² [ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ]

.Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ

— Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ C ++

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ C ++

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° C

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ языка C Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² качСствС подмноТСства стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ C ++. Они ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ мноТСство аспСктов, ΠΎΡ‚ ΠΎΠ±Ρ‰ΠΈΡ… слуТСбных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ макросов Π΄ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ управлСния динамичСской ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ:

(assert.h)
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° диагностики C (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(ctype.h)
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ символов (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(errno.h)
C Errors (header)
(fenv.h)
Floating- срСда (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(float.h)
Π₯арактСристики Ρ‚ΠΈΠΏΠΎΠ² с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(inttypes.h)
ЦСлочислСнныС Ρ‚ΠΈΠΏΡ‹ C ( Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(iso646.h)
ISO 646 ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ написаниС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(limits.h)
Π Π°Π·ΠΌΠ΅Ρ€Ρ‹ Ρ†Π΅Π»Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(locale.h)
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ C (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(math.h)
Числовая Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° C (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(setjmp.h)
ΠΠ΅Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ ( Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(signal.h)
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° C для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сигналов (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(stdarg.h)
ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(stdbool.h)
ЛогичСский Ρ‚ΠΈΠΏ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(stddef.h)
C Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ опрСдСлСния (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(stdint.h)
ЦСлочислСнныС Ρ‚ΠΈΠΏΡ‹ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(stdio.h)
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° C для выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π° (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(stdlib.h)
Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΎΠ±Ρ‰ΠΈΡ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ C (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(строка .h)
Π‘Ρ‚Ρ€ΠΎΠΊΠΈ C (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(tgmath.h)
Π’ΠΈΠΏΠΎΠ²Ρ‹Π΅ матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(time.h)
C Time Library (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(uchar.h)
Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹ Unicode (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(wchar.h)
Π¨ΠΈΡ€ΠΎΠΊΠΈΠ΅ символы (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
(wctype.h)
Π¨ΠΈΡ€ΠΎΠΊΠΈΠΉ Ρ‚ΠΈΠΏ символов (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)

ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ массива (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Bitset header (header)
Deque header (header)
Π€ΠΎΡ€Π²Π°Ρ€Π΄Π½Ρ‹ΠΉ список (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ списка (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΊΠ°Ρ€Ρ‚Ρ‹ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
< queue>
Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ (header)
Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ стСка (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ) нСупорядочСнной ΠΊΠ°Ρ€Ρ‚Ρ‹
Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ нСупорядочСнного Π½Π°Π±ΠΎΡ€Π° (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)

90 012 Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π²Π΅ΠΊΡ‚ΠΎΡ€Π° (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π°

ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности для использования абстракции, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ , ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ для выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π²Π²ΠΎΠ΄Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° с ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡΠΌΠΈ символов, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ»ΠΈ строки.
Π­Ρ‚Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ прСдоставляСтся Ρ‡Π΅Ρ€Π΅Π· нСсколько связанных классов, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠ°Ρ€Ρ‚Π΅ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ, с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² Π²Π²Π΅Ρ€Ρ…Ρƒ:

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Atomics ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

<Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½Ρ‹ΠΉ>
Атомарный (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
<пСрСмСнная_условия>
ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ условия (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
<Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅>
Π‘ΡƒΠ΄ΡƒΡ‰Π΅Π΅ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
mutex>
Mutex (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Thread (header)

Π Π°Π·Π½Ρ‹Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ

<Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ>
Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° шаблонов: Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ (Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°
)
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
ЀасСты прСобразования Unicode (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° комплСксных чисСл (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ )
<ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅>
Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
<Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ>
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Бписок ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ² (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
ЧисловыС ограничСния (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
<ΠΏΠ°ΠΌΡΡ‚ΡŒ>
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ памяти (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
<Π½ΠΎΠ²Ρ‹ΠΉ>
ДинамичСский ΠΏΠ°ΠΌΡΡ‚ΡŒ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
ΠžΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Π΅ числовыС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Random (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Ratio header ( Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
РСгулярныС выраТСния (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
ΠšΠ»Π°ΡΡΡ‹ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Π‘Ρ‚Ρ€ΠΎΠΊΠΈ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
БистСмныС ошибки (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
ИндСкс Ρ‚ΠΈΠΏΠ° (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ Ρ‚ΠΈΠΏΠ΅ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
type_traits (header)

90 014

<ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°>
ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° массивов числовых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ)

Π₯ΠΎΠ΄ обновлСния

Π’ настоящСС врСмя вСдСтся Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ обновлСнию всСй ссылки Π½Π° послСдний стандарт.Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ состояниС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°, см. Π₯ΠΎΠ΄ обновлСния .
.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *