Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π―Π·Ρ‹ΠΊ программирования Π‘ΠΈ для ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 45

Автор C. Π‘ΠΎΡ‡ΠΊΠΎΠ²

ΠžΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ANSI, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ Π² ΠΏΠΎΠ»Π½ΠΎΠΌ описании Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ отмСчСнная библиотСчная функция Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² стандарт языка Π‘ΠΈ.

ΠšΠ ΠΠ’ΠšΠžΠ• ΠžΠŸΠ˜Π‘ΠΠΠ˜Π• Π‘Π˜Π‘Π›Π˜ΠžΠ’Π•ΠšΠ˜

НиТС приводится ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС основных Π³Ρ€ΡƒΠΏΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для быстрой ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅. ΠŸΡ€ΠΈ этом вводятся основныС понятия, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΈ описании Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (Π² частности, связанныС с ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°). Π’Π°ΠΊΠΆΠ΅ указываСтся, Π² ΠΊΠ°ΠΊΠΎΠΌ стандартном Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠΎΠΌ (ΠΏΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ прСпроцСссора #include) Ρ„Π°ΠΉΠ»Π΅ содСрТится описаниС ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, относящихся ΠΊ Π½Π΅ΠΉ структур Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ констант.

Π Π°Π±ΠΎΡ‚Π° с областями памяти ΠΈ строками

Π’ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ Π³Ρ€ΡƒΠΏΠΏΠ° Π€ΡƒΠ½ΠΊΡ†ΠΈΠΉ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ областСй памяти, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π±Π°ΠΉΡ‚ΠΎΠ².

Если Ρ€Π°Π·ΠΌΠ΅Ρ€ области, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, задаСтся явно, Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π±ΡƒΡ„Π΅Ρ€ΠΎΠΌ.

Π”Ρ€ΡƒΠ³ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ понятиС β€” строка. ΠžΡ‚Π»ΠΈΡ‡ΠΈΠ΅ строки ΠΎΡ‚ Π±ΡƒΡ„Π΅Ρ€Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π΅Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ задаСтся Π½Π΅ явно, Π° опрСдСляСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΠ²ΡˆΠΈΠΌΡΡ ΠΏΡ€ΠΈ просмотрС строки слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ Π±Π°ΠΉΡ‚ΠΎΠΌ (ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ '\0'), ΠΏΡ€ΠΈΡ‡Π΅ΠΌ считаСтся, Ρ‡Ρ‚ΠΎ этот Π½ΡƒΠ»Π΅Π²ΠΎΠΉ Π±Π°ΠΉΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ строкС.

Для копирования Π±ΡƒΡ„Π΅Ρ€ΠΎΠ², для присваивания ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ Π±Π°ΠΉΡ‚Ρƒ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€Π° Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ значСния ΠΈ для сравнСния содСрТимого Π΄Π²ΡƒΡ… Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

Ѐункция ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС memccpy ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ символы ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ скопирован Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ символ ΠΈΠ»ΠΈ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ скопировано ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ число символов memchr Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ символа Π² Π±ΡƒΡ„Π΅Ρ€Π΅ memcmp сравниваСт ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ число символов ΠΈΠ· Π΄Π²ΡƒΡ… Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² memlcmp сравниваСт ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ число символов Π΄Π²ΡƒΡ… Π±ΡƒΡ„Π΅Ρ€ΠΎΠ², считая строчныС ΠΈ прописныС Π±ΡƒΠΊΠ²Ρ‹ эквивалСнтными memcpy ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ количСство символов ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ memset ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ количСство Π±Π°ΠΉΡ‚ΠΎΠ² Π² Π±ΡƒΡ„Π΅Ρ€Π΅ movedata ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ количСство символов ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Π΄Π°ΠΆΠ΅ ΠΊΠΎΠ³Π΄Π° Π±ΡƒΡ„Π΅Ρ€Π° находятся Π² Ρ€Π°Π·Π½Ρ‹Ρ… сСгмСнтах

ΠŸΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΡ‹ пСрСчислСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ содСрТатся Π² Ρ„Π°ΠΉΠ»Π΅ memory.h (MSC) ΠΈ Π² Ρ„Π°ΠΉΠ»Π°Ρ… mem.h ΠΈ string.h (Π’Π‘).

БистСма программирования Π’Π‘ прСдоставляСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±ΡƒΡ„Π΅Ρ€Π°ΠΌΠΈ:

Ѐункция ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС memove ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ количСство символов ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ movmem ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ количСство символов ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ setmem ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ количСство Π±Π°ΠΉΡ‚ΠΎΠ² Π² Π±ΡƒΡ„Π΅Ρ€Π΅

ΠŸΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΡ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ memmove ΠΈ movmem содСрТатся Π² Ρ„Π°ΠΉΠ»Π°Ρ… mem.h ΠΈ string.h. ΠŸΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ setmem содСрТится Π² Ρ„Π°ΠΉΠ»Π΅ mem.h.

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Π’Π‘ & MSC):

Ѐункция ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС strcat катСнация (склСиваниС) строк strchr Π½Π°ΠΉΡ‚ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ символа Π² строкС strcmp ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ Π΄Π²Π΅ строки strcpy ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ строку Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ strcspn Π½Π°ΠΉΡ‚ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ символа ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° символов Π² строкС strdup Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ строки strerror ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² строкС сообщСниС ΠΎΠ± ошибкС, состоящСС ΠΈΠ· Π΄Π²ΡƒΡ… частСй: систСмной диагностики ΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ сообщСния stricmp ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ Π΄Π²Π΅ строки, считая символы Π½ΠΈΠΆΠ½Π΅Π³ΠΎ ΠΈ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ рСгистров эквивалСнтными strlen Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π΄Π»ΠΈΠ½Ρƒ строки strlwr ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ строку Π² Π½ΠΈΠΆΠ½ΠΈΠΉ рСгистр (строчныС Π±ΡƒΠΊΠ²Ρ‹) strncat Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ n символов Π² строку strncmp сравнСниС n символов Π² Π΄Π²ΡƒΡ… строках strncpy ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ n символов ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ строки Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ strnicmp сравнСниС n символов Π΄Π²ΡƒΡ… строк strnset ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ n символов Π² строкС Π² Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ strpbrk Π½Π°ΠΉΡ‚ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ любого символа ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° Π² строкС strrchr Π½Π°ΠΉΡ‚ΠΈ послСднСС Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ символа Π² строкС strrev ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ (ΠΏΠ΅Ρ€Π΅Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ) строку strset ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ всС символы строки Π² Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ strspn Π½Π°ΠΉΡ‚ΠΈ ΠΏΠ΅Ρ€Π²ΡƒΡŽ подстроку ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° символов Π² строкС strstr Π½Π°ΠΉΡ‚ΠΈ ΠΏΠ΅Ρ€Π²ΡƒΡŽ подстановку ΠΎΠ΄Π½ΠΎΠΉ строки (Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΉ) Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ strtok Π½Π°ΠΉΡ‚ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ Π² строкС strupr ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ строку Π² Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ рСгистр (Π·Π°Π³Π»Π°Π²Π½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹)

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, систСма программирования MSC прСдоставляСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ strcmpi (ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ stricmp), Π° систСма программирования Π’Π‘ прСдоставляСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ stpcpy (ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ strcpy, Π½ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π² Ρ‚ΠΎΡ‡ΠΊΡƒ Π²Ρ‹Π·ΠΎΠ²Π° Π΄Ρ€ΡƒΠ³ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅).

ΠŸΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΡ‹ всСх Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками содСрТатся Π² Ρ„Π°ΠΉΠ»Π΅ string.h. ВсС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ со строками, Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΠΌΠΈΡΡ Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ Π±Π°ΠΉΡ‚ΠΎΠΌ ('\0'). Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивом символов, Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ Π² ΠΊΠΎΠ½Ρ†Π΅ Π½ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ Π±Π°ΠΉΡ‚Π°, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСобразования Π±ΡƒΡ„Π΅Ρ€ΠΎΠ², описанныС Π²Ρ‹ΡˆΠ΅.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ класса символов ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ символов

Ѐункция ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС isalnum ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π±ΡƒΠΊΠ²Ρƒ ΠΈΠ»ΠΈ Ρ†ΠΈΡ„Ρ€Ρƒ isalpha ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π±ΡƒΠΊΠ²Ρƒ isascii ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° символ ΠΈΠ· Π½Π°Π±ΠΎΡ€Π° ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ ASCII iscntrl ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ символ isdigit ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π΄Π΅ΡΡΡ‚ΠΈΡ‡Π½ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ isgraph ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹ΠΉ символ, ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΡ€ΠΎΠ±Π΅Π» islower ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΌΠ°Π»ΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ isprint ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹ΠΉ символ ispunct ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π·Π½Π°ΠΊ ΠΏΡƒΠ½ΠΊΡ‚ΡƒΠ°Ρ†ΠΈΠΈ isspace ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΡ€ΠΎΠ±Π΅Π»ΡŒΠ½Ρ‹ΠΉ символ isupper ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π·Π°Π³Π»Π°Π²Π½ΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ isxdigit ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ toascii ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ символа Π² ΠΊΠΎΠ΄ ASCII tolower ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΌΠ°Π»ΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ, Ссли заглавная Π±ΡƒΠΊΠ²Π° toupper ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°Π»ΠΎΠΉ Π±ΡƒΠΊΠ²Ρ‹ Π² Π·Π°Π³Π»Π°Π²Π½ΡƒΡŽ _tolower ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡƒΠΊΠ²Ρ‹ Π² ΠΌΠ°Π»ΡƒΡŽ (Π±Π΅Π· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ) _toupper ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡƒΠΊΠ²Ρ‹ Π² Π·Π°Π³Π»Π°Π²Π½ΡƒΡŽ (Π±Π΅Π· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ)

ВсС эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ΠΊΠ°ΠΊ макроопрСдСлСния, Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ»Π΅ ctype.h

Π€ΠΎΡ€ΠΌΠ°Ρ‚Π½Ρ‹Π΅ прСобразования Π΄Π°Π½Π½Ρ‹Ρ…

Ѐункция ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС atof ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ строки, Π² прСдставляСмоС Π΅ΠΉ число Ρ‚ΠΈΠΏΠ° float atoi ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ строки Π² число Ρ‚ΠΈΠΏΠ° int (Ρ†Π΅Π»ΠΎΠ΅) atol ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ строки Π² число Ρ‚ΠΈΠΏΠ° long (Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅) ecvt ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ числа Ρ‚ΠΈΠΏΠ° double Π² строку fcvt ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ числа Ρ‚ΠΈΠΏΠ° double Π² строку gcvt ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ числа Ρ‚ΠΈΠΏΠ° double Π² строку itoa ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ числа Ρ‚ΠΈΠΏΠ° int Π² строку ltoa ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ числа Ρ‚ΠΈΠΏΠ° long Π² строку ultoa ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ числа Ρ‚ΠΈΠΏΠ° unsigned long Π² строку

БистСма программирования Π’Π‘ прСдоставляСт Ρ‚Π°ΠΊΠΆΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ: