МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів Контакти
Тлумачний словник |
|
|||||||
Особливості типу charДані типу char (символьні дані) займають 1 байт пам'яті. Літерали типу char позначаються як символ в одиночних лапках: 'А', '1', '<' і т.д. Два символи, перший з яких – “зворотній слеш” (\), використовуються для представлення спеціальних символів. Так: '\n' – це “перехід на новий рядок”, '\t' – “табуляція”, '\\' – один зворотний слеш, '\'' – одні одиночні лапки. При необхідності символьний літерал може бути представлений восьмеричним кодом виду '\ddd'. Так, 'А' і '101' задають той самий символ. За замовчуванням передбачається, що символьні дані є знаковими. Беззнакові символьні дані з'являються за допомогою специфікатора unsigned. Беззнакові символьні дані мають значення від 0 до 255. Приклад визначення констант і перемінних типу char: const char c= 'м'; char f = -34; unsigned char q ='я' ; r=167; Тип char фактично є підтипом типу int, т.е для char – даних можна використовувати ті ж арифметичні операції, що і для типу int. У виразах дані типу char можна змішувати з даними типу int. Можна додати символ 'а' до числа 3 і одержати символ (точніше, код символу) 'd'. При визначенні результату таких змішаних виразів варто пам'ятати, що, якщо два операнда операції мають різний тип (наприклад, додаються дані char і int), більш простий тип даних автоматично перетвориться до форми складного. Для наведеного прикладу однобайтовий char буде перетворено у двухбайтовий int, і тільки після цього буде виконано додавання. Виявляється, що таке перетворення char у int виконується різним чином для знакових і беззнакових int. Справа в тім, що «подовження» робиться розмноженням знакового розряду. Оскільки «знакові» дані цілого типу представлені в додатковому коді, у якому старший (лівий) розряд з восьми розрядів байта є знаковим, для додатніх даних цей розряд – нульовий, для від'ємних – одиничний. Таке ж перетворення робиться при присвоюванні даних типу char даним типу int або long. Приклад: void main (void) {char a; unsigned char b; int c; d; a=0xa8; b=0xa8; c=a; d=b;} У результаті змінна с має значення 0хffffffа8 (-88), перемінна d – значення 0ха8 (168). Відзначимо, що як а, так як і b представляють символ 'и'. При необхідності виводу в стандартний потік коду символу варто явно перетворити його до типу int: cout<<'A'<<''має код''<<int ('A')<<endl; Якщо потрібно змінити систему числення для представлення виведених цілочислених даних, варто скористатися маніпуляторами. Маніпулятори oct (восьмерична система), hex (шестнадцятеричная система), dec (десяткова система) або setbase (основа системи ) дозволяють змінити основу системи. Функція – член setf з параметром ios::showbase забезпечує вивід цілочислених даних у формі літералів у відповідній системі . Функція – член unsetf з тим же параметром дозволяє виводити цілочислені дані без ознаки системи числення .
|
||||||||
|