Читайте также:
|
|
Рядок - це масив символів, який закінчується символом кінця рядка '\0'. Значенням символа є ціле число, яке є кодом таблиці символів ASCII. Символ відображається у одинарних лапках, наприклад: 'z'. Кожний символ в оперативній пам'яті займає один байт. Рядок характеризується дов-жиною, яка дорівнює кількості символів, та обсягом пам'яті. Обсяг пам'яті, який займає рядок, на одиницю більший за довжину рядка за рахунок символа кінця рядка '\0'.
Кожний символ рядка має свій індекс. Доступ до символа рядка здійснюється за допомогою операції [ ]. Рядок і всі його символи мають одне ім'я. При оголошенні рядка задаються ім'я та кількість елементів рядка. Довжина рядка визначається читанням символа кінця рядка '\0' під час введення рядка. Для позначення нового рядка використовується символ '\n'.
Рядок доступний через покажчик (адресу) на перший символ у рядку. Таким чином, ім'я рядка - це покажчик на перший символ.
Формати оголошення рядка:
char ім'я_рядка[кількість символів];
char *ім'я_рядка;
Рядок можна ініціалізувати у процесі оголошення через покажчик на рядок.Приклад:
char string[50];
сhar * pointer="mastering Visual C++"; //покажчик на рядок
Рядкові (літеральні) константи на відміну від значення символа записуються у подвійних лапках.
У процесі оголошення рядка як масиву символів останній повинний мати такий розмір, щоб зберігати рядок і символ кінця рядка '\0'. Якщо рядок більший за масив символів, то символи, які виходять за його межі, будуть змінювати дані, що знаходяться в наступних за масивом комірках пам'яті.
Рядки можуть компонуватися у масив рядків та утворювати текст. Під час оголошення масиву рядків необхідно визначити два індекси: кількість рядків і максимальну кількість символів у одному рядку.
Приклад: char text[5][25];
Уведення та виведення рядка здійснюється за допомогою функцій puts(char* s); gets(char *s); без використання циклів. Параметром функцій ведення та виведення є покажчик на рядок. Якщо вводити рядки за допомогою класів потоків через операцію >>, то символи рядка вводяться до першого символа пропуску. Символи рядка після символа пропуску ігноруються.
Для рядків не визначені операції присвоєння (=) та порівняння (>, <, ==,!=). Для виконання подібних дій використовуються відповідні функції, прототипи яких визначені у файлі string.h. Перелік деяких функцій обробки рядків подано у табл. 4.1.
9.1.2. Деякі функції обробки рядків
Умовні позначення: destination - рядок призначення; source - початковий рядок; maxlen - максимальна довжина рядка (підрядка); n - кількість символів; s, s1, s2 - поточні рядки; с - символ для пошуку; endptr - помилка під час перетворення рядка; radix - основа системи числення.
Таблиця 4.1 Прототипи функцій з файлу string.h
Дата добавления: 2015-08-27; просмотров: 82 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Приклад алгоритму та програми | | | Приклад алгоритму та програми |