МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів Контакти
Тлумачний словник |
|
|||||||
Основні теоретичні відомостіВ мовах С та С++ існують достатньо розвинені засоби для обробки символьної інформації, такі як введення/виведення окремих символів та рядків, функції для визначення належності символів та рядків, об'єднання рядків, перетворення їх. Рядок - це послідовність символів, що заключенні у подвійні лапки. Транслятор додає в кінець кожного рядка нульовий байт ‘\0’, так що програма, що переглядає рядок, може знайти її кінець. Приклад: cout<<“This is character string”; Кожна рядкова константа, навіть якщо вона ідентична іншій рядковій константі, зберігається в окремому місці пам'яті. Рядкова константа – це масив символів. Вона має тип char[]. Символьна константа уявляє собою деякий символ в лапках. Приклад : ‘a’, ‘A’,’7’,’*’. Символьні константи вважаються данними типу int. Існує декілька способів визначення рядків: використання рядкових констант, масивів типу char, покажчиків на тип char та масивів, що складаються з символьних рядків. Приклади : 1. Ініціалізація масива за допомогою рядкової константи: char m[]=”string”; Даний оператор ініціалізував зовнішній масив m для вказаного рядка. Аналогічно char m[]={‘s’,’t’,’r’,’i’,’n’,’g’,’\0’}; ім'я m - покажчик на нульвий елемент масиву: m = =&m [0]; *m = = ‘s’, *(m+1) = = m [1] = = ‘t’. 2. a) char *l = “string”; б) static char l[] = “string”; Опис з масивом б) визиває створення масиву з сьоми елементів (кількість символів у слові string+1 символ, що завершує ‘\0’). Кожний елемент ініціалізується сумісним символом. Компілятор розглядає ім'я l як синонім адреси першого елемента масиву, де l - константа покажчика. Можно використовувати операциї l+1 для ідентифікації наступного елемента маcиву (‘t’). Але не можна використовувати вираз ++l . Форма з покажчиком а) також визиває створення в статичній пам'яті сім елементів для зберігання рядка. Окрім того, виділяється ще одна чарунка пам'яти для змінної l, яка є покажчиком. Спочатку ця змінна вказує на початок рядка, але її значення може змінюватися. В даному випадку, використовуючи операції збільшення, ++l можно посилатися на елемент ‘t’. Таким чином, у випадку а) ініціалізовано одну змінну типу покажчик. Приведемо приклад явного задання розміру пам'яти. Приклад : char l[7] = “string”; char name [81]; Масив name буде заповнюватись у процесі роботи, саме тому резервується 80 символів. Якщо кількість елементів в name буде менш ніж 80, то невикористані елементи автоматично ініціалізуються символом нуль.
|
||||||||
|