Стринgови во C++

Стринг во програмскиот јазик C++ е тип на податок, односно објект од класата string (string објект), кој во суштина е низа од карактери. За работа со стрингови е неопходно да се вклучи на почеток библиотеката за работа со стрингови т.е да се напише предпроцесорската наредба

#include <string>

String објект се декларира на следниот начин:

       string primer;

        И за стринговите како и за низите од карактери важи дека cin чита податоци до првото појавување на празно место, tab или знак за нов ред, доколку сакаме да прочитаме цел ред текст (наместо само еден збор или број), потребно е да ја искористиме функцијата getline (cin, tekst);
 

Функции за работа со стринgови во C++

 

str1.append(str2)

Додава str2 на str1. брише се во стринг str1

str1.compare(str2)

Прави споредба на str1 и str2

str.empty()

враќа true ако str е празен

str.clear()

брише се во стринг str

str.erase(x,n)

брише n знаци од str почнувајќи од позиција x

str1.insert(x,str2)

вметнува стринг str2 во str1 почнувајќи од позиција x.

str.length()

str.size()

враќа должина на стринг str. Ист резултат враќа и функцијата

 str.size()

str.substr(pocetok,

dоlzina)

Издвојување на подстринг со должина dolzina од позицијa pocetok (да се води сметка дека индексот кај стринговите а со тоа и низите со карактери почнува од 0)

 

Пример 1. Употреба на функциите size, length и собирање на стрингови со + и со функција append

#include <iostream>

#include <string>

using namespace std;

int main()

{

    string a, b, c, d; 

    a = "prva";

    b = "vtora";

    cout << a.length() << endl; //pechati '4'

    cout << b.size() << endl;    //pechati '5'

    c = a + b;

    cout << c << endl; //pechati 'prvavtora' 

    d = a;

    d.append(b);

    cout << d << endl; //pechati 'prvavtora';

 

    if (d.compare(c)==0)

          cout<<"isti";

    else

          cout <<"razlicni";

    return 0;

}

Пример 2. Употреба на функциите clear и empty

#include <iostream>

#include <string>

using namespace std;

int main()

{

    string a, b, d;

    cout<<"Vnesete go prviot tekst"<<endl;
    getline (cin, a);
    cout<<"Vnesete go vtoriot tekst"<<endl;
    getline (cin, b);

    d=a+b;

    d.clear();

 

    if (d.empty()==true)

          cout<<"Stringot e prazen";

    else

          cout <<"Stringot ne e prazen";

 

return 0;

}

Пример 3. Употреба на функцијата erase

#include <iostream>

#include <string>

using namespace std;

int main()

{

string a, b, c, d;

a = "prva";

b = "vtora";

c=a+b;

c.erase(2,6);

cout<<"Noviot string e "<<c;

return 0;

}

Пример 4. Употреба на функцијата insert

#include <iostream>

#include <string>

using namespace std;

int main()

{

string a, b, c, d;

a = "prva";

b = "vtora";

c="nulta";

c.insert(4,a);

cout<<"Noviot string e "<<c;

return 0;

}

 

Пример 5. Употреба на функцијата substr

 

#include <iostream>

#include <string>

using namespace std;

int main()

{

string a, b, c, d;

a = "prva";

b = "vtora";

c=a.substr(0,3);

cout<<"Noviot string e "<<c;

return 0;

}

 

Пример 6. Употреба на функцијата compare

 

#include <iostream>
#include <string>
using namespace std;
int main()
{
    string a, b;
    bool dali;
    a = "prva";
    b = "prva";
    dali=a.compare(b);
    if (dali == 0)
        cout<<"isti "<<endl;
    else
        cout<<"ne se isti "<<endl;
    return 0;
}