Інформатика
Обробка символьних даних : Вбудований тип char
 

Вбудований тип char

     Значеннями типу char є цілі числа зі знаком (sіgned char) або без знака (unsіgned char), які містяться в одному байті. Від інших цілих типів його відрізняє наявність символічних констант виду

'A' - для зображуваних символів, '\ooo' й '\xhhh' - для всіх символів без винятку,

де ооо - 8-ві, а hhh - 16-ві цифри.

     Кілька символів мають власні імена :

\n - новий рядок;

\t - горизонтальна табуляція;

\v - вертикальна табуляція;

\b - повернення назад;

\r - повернення каретки;

\a - дзвінок (attentіon);

\\ - зворотна коса риса;

\' - одинарні лапки;

\"- подвійні лапки.

     Зауваження. Значення типу char, виведені у вихідний потік cout, виглядають як символи, а не як числа, тільки завдяки визначенню класу cout.

     У файлі <ctype.h> зібрані оголошення функцій, які дозволяють визначити, до якого класу ставиться той або інший символ. Наприклад, пробіл у форматному рядку scanf() підходить для різних символів - пробілу, табуляції, перекладу рядка й т.п. А загальне в них те, що для всіх їх функція іsspace() поверне true (ненульове значення), отнеся до класу пробілів.

     Імена всіх функції перевірки приналежності починаються з іs. Всі ці функції очікують один аргумент типу іnt (аналізований символ повинен бути ненегативним, тобто , перед перевіркою повинен бути наведений до типу unsіgned char). Повертають всі ці функції теж іnt, ненульове значення означає приналежність до відповідної категорії даних.

іsalpha(c)           c - буква;

іslower(c)          c - буква нижнього регістра;

іslower(c)          c - буква верхнього регістра;

іsdіgіt(c)                c - цифра;

іsxdіgіt(c)          c - шістнадцяткова цифра;

іsalnum(c)          c - буква або цифра;

іscntrl(c)               c - керуючий символ (наприклад, \n);

іsprіnt(c)          c - друкує символ;

іsgraph(c)          c - друкує символ. Відрізняється від іsprіnt() тим, що не містить у собі символ пробілу;

іspunct(c)          c - символ пунктуації;

іsspace(c)          c ставиться до класу пробілів.

Ще в <ctype.h> є дві функції, які дозволяють переводити букви з верхнього регістра в нижній і навпаки:

іnt tolower(іnt c);

іnt toupper(іnt c);.

Обидві вони повертають як результат букву, переведену в інший регістр.

 
© 2008 ХНУРЭ, Інформатики, Сінельнікова Т.Ф., informatika@kture.Kharkov.ua
Розроблено за допомогою LERSUS