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


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


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


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


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


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


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


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


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


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



Контакти
 


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






Void main()

{

char st [n], st1 [m];

cout << "Введіть рядок"<< endl;

cin. getline(st,n);

cout << "Введіть підрядок"<< endl;

cin >> st1;

if(strstr (st,st1)!=NULL)

{

del(st, strstr (st,st1) - st, strlen ( st1) );

cout << st << endl;

}

}

void del(char *st,int k,int n)

{

int i;

for( i = k ; i < strlen ( st )-n; i++)

st[i] = st[i+n];

st[i] = '\0';

}

void* memchr (const void *st, int s ,int n); ¾ функція шукає символ "s" у рядку *st довжиною n байт, тобто в блоці пам'яті, на який указує покажчик st. Якщо символ sзнайдений, функція повертає покажчик на цей символ, у противному випадку повертає NULL.

 

void* memcmp (const void *st, const void * s , n); і

void* memicmp (const void *st, const void * s ,int count);¾ функції порівнюють n байт із двох буферів на її початок яких указують s1 і s2.

Функція повертає значення

< 0 ¾ якщо s1 < s2;

=0 ¾ якщо s1 = s2;

>0 ¾ якщо s1 > s2;

 

char *strset (char *st, int ch); ¾ функція заповнює рядок st символом ch і повертає покажчик на отриманий рядок.

 

¾ Функції перетворення рядків у числа і чисел у рядки

Ці функції знаходяться у файлі <stdlib.h>

int atoi (const char *s); ¾ перетворить рядок s у число типу int. Повертається отримане число.Число 0, якщо зустрінеться символ, що не може бути перетворений. Рядок повинний містити коректне число, наприклад "2345", і мати наступну структуру:

 

[ проміжки ] [знак числа] [ цифри].

long atol (const char *s);¾ перетворить рядок s у число типу long int (аналогічна функції atoi.)

double atof (const char *s); ¾ перетворить рядок символів у дійсне число double. Якщо при перетворенні зустрічається символ, що не може бути перетворена функція повертає 0.

Оброблюваний рядок повинний мати структуру:

[проміжки] [знак числа] [цифра. цифра] [літера е,Е,d або D] [знак порядку] [цифри порядку], наприклад ”-12345.123 ” або ”-12. 345123 Е3 ”

 

char *ecvt (double vl, int n, int *dec, int *sign ); ¾ перетворить число vl у рядок символів, кількість яких дорівнює n символів цифр. Положення десяткової крапки від першої цифри числа повертається в змінній, на яку вказує dec. Знак числа повертається в змінну на який указує sign. Якщо sign = 0 ¾ число додатнє, інакше ¾ від’ємне. Отриманий рядок зберігається у внутрішній пам'яті функції, покажчик повертається на початок сформованого рядка.

 

сhar *fcvt (double vl, int n, int *dec, int *sign ); ¾ аналогічна попередній функції, але для ecvt- параметр decзадають загальна кількість цифр, то для fcvt- кількість цифр після десяткової крапки.

сhar *gcvt (double vl, int n, сhar *buf); ¾ перетворить число vl у рядок, що поміщає в буфер, покажчик на початок якого є buf, n ¾ число цифр у символічному записі перетвореного числа. Отриманий рядок містить символ знака числа і десяткової крапки, якщо число містить менше десяткових цифр, ніж n. У цьому випадку молодша цифра дробової частини відкидається. Якщо перетворене число не міститься в задану кількість цифр n, функція генерує символьний запис в експонентній формі, включаючи в рядок символ Е и знак порядку. Функція повертає покажчик на початок сформованого рядка.

strlen (st) - повертає довжину st без нуль - термінатора '\0'.

 

¾ Функції перевірки символів

Ці функції знаходяться у файлі <ctype.h>:

isgraph (s) ¾ повертає значення ”істина” тобто не нуль, якщо s є друкованим символом і “неістина ” (тобто 0) , якщо s є проміжком або яким - небудь не відображуваним символом.

isprint (s) ¾ повертає значення ”істина” тобто не нуль , якщо s є друкованим символом, включаючи проміжок і ”неістина” (тобто 0) у всіх інших випадках.

ispunct (s) ¾ повертає значення "істина" тобто не нуль , якщо s є знаком пунктуації(будь-який друкований символ крім проміжку і “неістина” (тобто 0) в інших випадках.

 

isdigit (s) ¾ повертає значення "істина" тобто не нуль , якщо s є цифрою від 0 до 9 і “неістина” (тобто 0) в інших випадках.

isalnum (s) ¾ повертає значення "істина", тобто не нуль, якщо s є цифрою або літерою (заголовною або строковою ) і “неістина” (тобто 0) у всіх інших випадках (тобто перевіряє алфавітні і цифрові символи).,

 

tolower (s) ¾ перетворить символ s до нижнього регістра;

 

toupper (s) ¾ перетворить символ s до верхнього регістра;

 

atoi (s) ¾ перетворить рядок s до ціле число;

 

atol (s) ¾ перетворить рядок s до довгого цілого;

 

atof (s) ¾ перетворить рядок s до числа з крапкою.

 

Розглянемо ряд прикладів з використанням строкових функцій .

Приклад 3.5 Ввести список прізвищ (рядків) і відсортувати його за алфавитом.

 

//P3_5.CPP сортування списку прізвищ за алфавитом

#include <string.h>

#include < iostream>

using namespace std;




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

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

 

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


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