sstream library (tsz. sstream libraries)
sstream
könyvtár a C++ nyelvben a <sstream>
fejlécben található, és az istringstream, ostringstream és stringstream osztályokat biztosítja, amelyek segítségével szövegalapú adatfolyamokat lehet kezelni.
istringstream
(bemeneti sztringfolyam)
cin
-ből olvasnánk.#include <iostream>
#include <sstream>
using namespace std;
int main() {
string input = "123 456 789";
istringstream iss(input);
int a, b, c;
iss >> a >> b >> c; // Az iss-ből olvasunk be számokat
cout << "Számok: " << a << ", " << b << ", " << c << endl;
return 0;
}
ostringstream
(kimeneti sztringfolyam)
cout
-ba írnánk.#include <iostream>
#include <sstream>
using namespace std;
int main() {
ostringstream oss;
int szam = 42;
string nev = "Peter";
oss << "Nev: " << nev << ", Ertek: " << szam;
string eredmeny = oss.str(); // A létrehozott string elmentése
cout << eredmeny << endl;
return 0;
}
stringstream
(bemeneti és kimeneti sztringfolyam)
#include <iostream>
#include <sstream>
using namespace std;
int main() {
stringstream ss;
ss << 100 << " " << 200 << " " << 300;
int x, y, z;
ss >> x >> y >> z; // Kiolvassuk a számokat
cout << "Kiolvasott értékek: " << x << ", " << y << ", " << z << endl;
return 0;
}
✅ Sztring feldarabolása szóközök mentén
#include <iostream>
#include <sstream>
#include <vector>
using namespace std;
int main() {
string sor = "alma korte barack";
istringstream iss(sor);
string szo;
vector<string> szavak;
while (iss >> szo) {
szavak.push_back(szo);
}
for (const auto& s : szavak) {
cout << s << endl;
}
return 0;
}
✅ Szám konvertálása sztringgé és vissza
#include <iostream>
#include <sstream>
using namespace std;
int main() {
int szam = 123;
stringstream ss;
ss << szam;
string szamString = ss.str();
cout << "Szám stringként: " << szamString << endl;
int ujSzam;
ss >> ujSzam;
cout << "Vissza konvertált szám: " << ujSzam << endl;
return 0;
}
istringstream
: sztringből való beolvasás (>>
)ostringstream
: adatok írása egy sztringbe (<<
)stringstream
: kombinálja az előző kettőt