Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Rozdział 28] Modyfikowanie tekstu i sprawdzanie jego długości

Ostatnio zmodyfikowano 2015-01-12 11:20
Autor Wiadomość
luuuzik
Temat założony przez niniejszego użytkownika
[Rozdział 28] Modyfikowanie tekstu i sprawdzanie jego długości
» 2015-01-11 21:30:19
Witam, odrabiałem zadanie na koniec działu, jednakże coś mi świruje kompilator a mianowicie wywala błąd po "podmianie" znaku '>' na ']', czyli po dołączeniu funkcji szukaj_wszystkich_znakow2. Oto kod:
C/C++
#include <iostream>
#include <string>
using namespace std;

string konwertuj( string & tekst )
{
    string sWynik;
    tekst.erase( 23, 7 );
    tekst.erase( 30, 4 );
   
    return tekst;
}
string szukaj_wszystkich_znakow( string & tekst, char szukany_znak )
{
    size_t znaleziona_pozycja = tekst.find( szukany_znak );
    if( znaleziona_pozycja == string::npos )
    {
        cout << "Nie znaleziono tego znaku w tekscie" << endl;
    }
    do
    {
        cout << "Znak zostal znaleziony na pozycji: " << znaleziona_pozycja << endl;
        tekst.erase( znaleziona_pozycja, 1 );
        tekst.insert( znaleziona_pozycja, "[" );
        znaleziona_pozycja = tekst.find( szukany_znak, znaleziona_pozycja + 1 );
       
       
        cout << "Oraz zostal odpowiednio podmieniony!" << endl;
    } while( znaleziona_pozycja != string::npos );
   
}

string szukaj_wszystkich_znakow2( string & tekst, char szukany_znak )
{
    size_t znaleziona_pozycja = tekst.find( szukany_znak );
    if( znaleziona_pozycja == string::npos )
    {
        cout << "Nie znaleziono tego znaku w tekscie" << endl;
    }
    do
    {
        cout << "Znak zostal znaleziony na pozycji: " << znaleziona_pozycja << endl;
        tekst.erase( znaleziona_pozycja, 1 );
        tekst.insert( znaleziona_pozycja, "]" );
        znaleziona_pozycja = tekst.find( szukany_znak, znaleziona_pozycja + 1 );
       
       
        cout << "Oraz zostal odpowiednio podmieniony!" << endl;
    } while( znaleziona_pozycja != string::npos );
   
}
int main()
{
   
    string tekst = "<b>to jest </b> testowy        napis     :)";
    szukaj_wszystkich_znakow( tekst, '<' );
    szukaj_wszystkich_znakow2( tekst, '>' );
    cout << konwertuj( tekst ) << endl;
    return 0;
}
P-124689
alixir
» 2015-01-12 08:26:08
Zdefiniowałeś, że obie funkcje mają zwracać "string", lecz funkcje nie zwracają niczego.
P-124706
luuuzik
Temat założony przez niniejszego użytkownika
» 2015-01-12 11:20:15
Głupi błąd... Wszystko działa dzięki :)
P-124708
« 1 »
  Strona 1 z 1