dzielenie stringu, algorytm.

0

Witam.
Jest to funkcja mojego irc bota:

#include <iostream>
#include <string>

using namespace std;

int main()
{
	char dw[] = "!dw 127.0.0.1 666 777 plik.txt miejsce_docelowe\n";
	char download[] = "!dw ";
    char upload[] = "!up ";
	cout << "nasz string to: " << dw << endl;
	const char *wsk_dw;
	string temp = dw;
	wsk_dw = strstr(temp.c_str(), download);
	if(wsk_dw)
	{
		int poczatek = 0;
		int spacja = 0;
		int koniec = 0;
		poczatek = temp.find("!dw"); 
		koniec = temp.find("\n");
		spacja = temp.find(" "); 
		string bez_dw = temp.substr(spacja+1); 
		cout << "poczatek: " << poczatek << endl;
		cout << "koniec: " << koniec << endl;
		cout << "spacja: " << spacja << endl;
		cout << "string bez_dw: " << bez_dw.c_str() << endl;
		spacja = bez_dw.find(" ");
		string ip = bez_dw.substr(0, spacja);
		cout << "ip: " << ip.c_str() << endl; 
		bez_dw = bez_dw.substr(spacja+1, koniec);
		cout << "string bez_dw: " << bez_dw.c_str() << endl;
		spacja = bez_dw.find(" ");
		string user = bez_dw.substr(0, spacja);
		cout << "user: " << user.c_str() << endl;
		spacja = bez_dw.find(" ");
		koniec = bez_dw.find("\n");
		bez_dw = bez_dw.substr(spacja+1, koniec);
		cout << "bez_dw pass: " << bez_dw.c_str() << endl;
		string password = bez_dw.substr(0, spacja);
		cout << "password: " << password.c_str() << endl;
		bez_dw = bez_dw.substr(spacja+1, koniec);
		spacja = bez_dw.find(" ");
		koniec = bez_dw.find("\n");
		string plik_zrodlowy = bez_dw.substr(0, spacja);
		cout << "plik_zrodlowy: " << plik_zrodlowy.c_str() << endl;
		bez_dw = bez_dw.substr(spacja+1, koniec);
		koniec = bez_dw.find("\n");
		string plik_docelowy = bez_dw.substr(0, koniec);
		cout << "plik_docelowy: " << plik_docelowy.c_str() << endl;
	}
	return 0;
}
 

Pytania:
1.Czy to się zalicza to algorytmu?
2.Jak to napisać lepiej/krócej/poprawniej
3.Jak się podszkolić w pisaniu taki rzeczy?

0
  1. Tak, nawet Hello World jest algorytmem.
  2. Pogoglować za Explode()
  3. Pisać czytać pisać czytać....

1 użytkowników online, w tym zalogowanych: 0, gości: 1