Лабораторна робота № 22. Обробка рядків

Мета:

Здобути навики використання середовища розробки мови C++, познайомитися з обробкою рядків, здобути навички написання програм.

Короткі теоретичні відомості до роботи.

Функції обробки рядків розміщені у заготовочному файлі вбудованої бібліотеки string.h. Розглянемо деякі функції, які найбільш застосовані, у наступній програмі.

//файл PART3\3_11.ccp

// обробка рядків

#include “c:\CPP\SUBPROG\\roll.h”

#include “c:\CPP\SUBPROG\\roll_txt.h”

typedef char STRING;

typedef char *STRING; //ввід псевдоніму для типу char і char *

main () { clrscr();

cout<<” ВХІДНІ РЯДКИ: “;

STRING text[] =

“Шалтай-Болтай сидел на стене”,;

cout << ’\n’<<text;

STRING textP[] =

{“Humpty Dumpty sat on a wall,};

cout << ’\n’<<*textP<<end1;

STRING string[30]; //додатковий рядок-адреси

unsigned k=strlen(text);

cout<<”\nдовжина рядка text без нульового символу=”<<k;

cout<<”\nдовжина рядка textP без нульового символу=”

<< strlen(*textP)<<end1;

strcpy(string, text); cout<<’\n’<< string<<end1;

cout<<”копіювання повного рядка text у string”;

strcpy(string, *textP); cout<<”\n\n”<< string<<end1;

cout<<”копіювання повного рядка textP у string”;

strcpy(string, text, 9); cout<<”\n\n”<< string<<end1;

cout<<”копіювання у string 9 знаків із text”

<<”поверх старого запису”;

string[9]= ‘\0’; cout<<’\n’<< string<<end1;

cout<<”нульовий символ відрізує кінець рядка”<<end1;

cout<< ‘\n’<<strncat (string, text, 6)<<end1;

cout<<”додавання 6 знаків у string із text”<<end1;

pause(9);

cout<<”\nрозбиття рядка text на лексеми”;

cout<<”\nрозділовий знак-пробіл”<<end1;

STRINGP lexP=strtok(text, “ “); //перший виклик

while(lexP!=NULL) {cout<< lexP<<end1;

lexP= strtok(NULL, “ “);};

cout<<”\nрозбиття рядка textP на лексеми”;

STRINGP markP[]={“t”};

lexP=strtok(*textP, * markP); //перший виклик

while(lexP!=NULL) {cout<< lexP<<end1;

lexP= strtok(NULL, *markP);};

cout<<”\n\nпісля розбиття на лексеми text і textP:”

<<end1<< text<<end1<< textP<<end1

<<”\n ***** кінець задачі *****”;

Pause(0); return 0;}


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow