Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Контакти
 


Тлумачний словник
Авто
Автоматизація
Архітектура
Астрономія
Аудит
Біологія
Будівництво
Бухгалтерія
Винахідництво
Виробництво
Військова справа
Генетика
Географія
Геологія
Господарство
Держава
Дім
Екологія
Економетрика
Економіка
Електроніка
Журналістика та ЗМІ
Зв'язок
Іноземні мови
Інформатика
Історія
Комп'ютери
Креслення
Кулінарія
Культура
Лексикологія
Література
Логіка
Маркетинг
Математика
Машинобудування
Медицина
Менеджмент
Метали і Зварювання
Механіка
Мистецтво
Музика
Населення
Освіта
Охорона безпеки життя
Охорона Праці
Педагогіка
Політика
Право
Програмування
Промисловість
Психологія
Радіо
Регилия
Соціологія
Спорт
Стандартизація
Технології
Торгівля
Туризм
Фізика
Фізіологія
Філософія
Фінанси
Хімія
Юриспунденкция






Введення-виведення рядків

Розглянемо найбільш розповсюдженні бібліотечні функції gets() та puts( ).

Функція gets( ) отримує рядок з буфера клавіатури. Вона зчитує символи до тих пір, поки не зустріне символ нового рядка (‘\n’). Функція бере вcі символи до знака ‘\n’, приєднує до них нуль-символ та передає рядок програмі, що її визиває.

Приклад:

/* отримання імені * /

main ( )

{ char name [81]; /* виділення пам'яти*/

printf ("Як вас звуть? \n");

gets(name); /* ім'я поміщується до масиву name */

cout<<”Гарне ім’я”<<name<<”\n”;

Функція puts( ) виводить рядок символів на консоль виводу, у неї є тільки один аргумент - покажчик на рядок.

Приклад:

void main ( ) {

char str[]=”Приклад”;

puts (str);

}

Операції над рядками

Для використання наведених далі функцій необхідно додати до програми файл string.h:

#include <string.h>

Таблиця 5.2 – Функції для роботи з рядками

Функція Опис
char *strcat (st1, st2); char *st1, *st2; Використовується для злиття рядків символів. В результаті st2 заповнюється символами st1 та st2.
char *strnkat (st1, st2, n); char *st1, *st2; int n; Виконує злиття двох рядків так, що з другого рядка копіює не больш за n символів.
int strcmp (st1, st2); char *st1, *st2; Порівнює два рядка у лексикографічному порядку. Повертає 0, якщо st1=st2 -1, якщо st1<st2 1, якщо st1>st2  
int strncmp (st1, st2, n); char *st1, *st2; int n; Порівнює перші n символів двох рядків.
char *strcpy (st1, st2); char *st1, *st2; Копіює рядок st2 в st1.
char *strncpy (st1, st2, n); char *st1, *st2; int n; Копіює не більш ніж n символів рядка st2.
int strlen (str); char *str; Визначає довжину рядка, тобто кількість символів у рядку без завершаючого ‘0’.
char *strchr (str, c); char *str; int c; Знаходить у вказаному рядку перші входження символа с.
char *strrchr (str, c); char *str; int c; Знаходить у рядку останнє входження символа с.

 

Продовження таблиці 5.2

char *strpbrk (st1, st2); char *st1, *st2; Знаходить у рядку st1 деякий із множини символів, що входять до рядка st2.
char *strspn (st1, st2); char *st1, *st2; Визначає довжину відрізка рядка st1, що містить символи зі множини символів, що входять до рядка st2.
char *strtok (st1, st2); char *st1, *st2; Виділяє з рядка st1 лексеми, разподілені любим із множини символів, що входять до рядка st2.

Приклад:

/* використання функцій strcat( ) и strcpy( )*/

main ( )

{

static char name [80];

static char cpname [80];

static char add [] = “додано до кількості користувачів системи”;

printf(“Вкажіть ваше прізвище.\n”);

gets(name);

strcpy(cpname, name); /*копія прізвища*/

strcat(name, add);

puts(name);

puts(cpname);

puts(add);

}

 

Результати роботи програми:

Вкажіть ваше прізвище.

Іванов

Іванов додано до кількості користувачів системи

Іванов

додано до кількості користувачів системи

 




Переглядів: 492

<== попередня сторінка | наступна сторінка ==>
Основні теоретичні відомості | Перевірка та перетворення символів

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

 

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.005 сек.