Programmieren, Algorithmen und Datenstrukturen 2 (Vorlesung 15)

Stream-Iteratoren

  • cin >> from >> to;  ← es werden keine Fehler abgefangen
  • .c_str() Char-Array-String, der mit 0 terminiert wird „Test“ = ‚T‘ ‚e‘ ’s‘ ‚t‘ ‚

    Programmieren, Algorithmen und Datenstrukturen 2 (Vorlesung 15)

    Stream-Iteratoren

    • cin >> from >> to;  ← es werden keine Fehler abgefangen
    • .c_str() Char-Array-String, der mit 0 terminiert wird „Test“ = ‚T‘ ‚e‘ ’s‘ ‚t‘ ‚\0‘
    • Wir müssen STL-String in Char-Array umwandeln, weil das OS es so verlangt
    • ifstream = input file stream
    • istream_iterator<string> eos; ← Standardmäßig auf letztem Element

    Erstellen einer Wortliste aus einem Textfile

    #include <string>
    #include <iterator>
    #include <set>
    #include <iostream>
    #include <fstream>
    using namespace std;
    
    int main( ) {
    	// Dateinamen für Quell- und Zieldatei einlesen:
    	string from, to;
    	cin >> from >> to;
    	// Ein- und Ausgabe-Stream erstellen:
    	ifstream is( from.c_str() ); ofstream os( to.c_str() );
    	// Stream-Iterator zur Eingabe:
    	istream_iterator<string> ii( is );
    	// "end-of-stream" (wird standardmäßig auf EOF/end-of-file gesetzt):
    	istream_iterator<string> eos;
    	// Stream-Iterator zur Ausgabe, der jedesmal "\n" anhängt:
    	ostream_iterator<string> oo( os, "\n" );
    	// Das set-Objekt namens buffer wird mit dem Input initialisiert:
    	set<string> buffer( ii, eos );
    	//multiset<string> buffer( ii, eos );
    	// buffer wird in die Ausgabedatei kopiert (set ist bereits sortiert und ohne Duplikate)
    	copy( buffer.begin(), buffer.end(), oo );
    	return 0;
    }
    Maximilian
    Maximilian

    Herzlich willkommen! Ich bin Max, ein Informatiker mit über 15 Jahren Berufserfahrung. Hier teile ich meine Leidenschaften, Erlebnisse und Perspektiven. Ich lade dich ein, gemeinsam mit mir auf eine Entdeckungsreise zu gehen.

    Schreiben Sie einen Kommentar

    Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

    Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.

    About me

  • Wir müssen STL-String in Char-Array umwandeln, weil das OS es so verlangt
  • ifstream = input file stream
  • istream_iterator<string> eos; ← Standardmäßig auf letztem Element

Erstellen einer Wortliste aus einem Textfile

#include <string>
#include <iterator>
#include <set>
#include <iostream>
#include <fstream>
using namespace std;

int main( ) {
	// Dateinamen für Quell- und Zieldatei einlesen:
	string from, to;
	cin >> from >> to;
	// Ein- und Ausgabe-Stream erstellen:
	ifstream is( from.c_str() ); ofstream os( to.c_str() );
	// Stream-Iterator zur Eingabe:
	istream_iterator<string> ii( is );
	// "end-of-stream" (wird standardmäßig auf EOF/end-of-file gesetzt):
	istream_iterator<string> eos;
	// Stream-Iterator zur Ausgabe, der jedesmal "\n" anhängt:
	ostream_iterator<string> oo( os, "\n" );
	// Das set-Objekt namens buffer wird mit dem Input initialisiert:
	set<string> buffer( ii, eos );
	//multiset<string> buffer( ii, eos );
	// buffer wird in die Ausgabedatei kopiert (set ist bereits sortiert und ohne Duplikate)
	copy( buffer.begin(), buffer.end(), oo );
	return 0;
}
Maximilian
Maximilian

Herzlich willkommen! Ich bin Max, ein Informatiker mit über 15 Jahren Berufserfahrung. Hier teile ich meine Leidenschaften, Erlebnisse und Perspektiven. Ich lade dich ein, gemeinsam mit mir auf eine Entdeckungsreise zu gehen.

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.