tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Matthias Reitinger
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
227
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Jennesta
    Jennesta Jennesta ist offline Mitglied Gold
    Registriert seit
    Sep 2007
    Ort
    Aachen
    Beiträge
    215
    Hallo Leute,

    mir stellt sich gerade die Frage, welche Variante meiner Implementierung schneller sein wird.
    Einmal habe ich es mit fstream realisiert und einmal mit fscanf. Bei kleinen Datenmengen fällt es nicht sonderlich auf, daher habe ich auch durch 'clock()' nicht viel erkennen können. Da ich später aber 100-200GB an Dateien abgrasen werde, wäre es mir schon wichtig die schnellste Methode zu nutzen.

    Hier mal ein Auszug der Funktionen:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    while(!in.eof()) {
            for(i=0; i<4; i++) {
                in >> a[k][i];
                in >> c;
            }
            in >> a[k][i];
            k++;
        }

    Code :
    1
    2
    3
    
    while (!feof(pfile)) {
            fscanf(pfile, "%lf, %lf, %lf, %lf, %lf", &a[i][0], &a[i][1], &a[i][2], &a[i][3], &a[i][4]);
        }

    Schonmal Danke für Hilfe.
    Grüße Jennesta
     
    Was soll daran kompliziert sein? Es muss doch nur ein Rad bewegt werden, man kann aufsteigen, es kommt die Matschhütte und durch den Regenbogen gelangst du zum hungrigen Affen, der Affenschwanz wird gezogen und bums kommst du zum Paradispark.

  2. #2
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.802
    Blog-Einträge
    5
    Hallo Jennesta,

    im Allgemeinen sind scanf & Co. schneller als die iostream-Varianten. Es kommt natürlich immer auch auf den konkreten Anwendungsfall an.

    Dein C++-Beispiel kann unter Umständen auch sehr lange dauern, da bei einem Einlesefehler eine Endlosschleife entsteht. Die erste Zeile sollte
    Code cpp:
    1
    
    while (in) {
    lauten.

    Grüße,
    Matthias
    Jennesta bedankt sich. 
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  3. #3
    Avatar von Jennesta
    Jennesta Jennesta ist offline Mitglied Gold
    Registriert seit
    Sep 2007
    Ort
    Aachen
    Beiträge
    215
    Danke für die schnelle Antwort.
    Das mit scanf etc. habe ich mir schon fast gedacht, aber gut das auch von anderer Seite zu hören.

    Achja, und danke für den Hinweis mit dem eof, werde ich mir hoffentlich merken

    Grüße Jennesta
     
    Was soll daran kompliziert sein? Es muss doch nur ein Rad bewegt werden, man kann aufsteigen, es kommt die Matschhütte und durch den Regenbogen gelangst du zum hungrigen Affen, der Affenschwanz wird gezogen und bums kommst du zum Paradispark.

Ähnliche Themen

  1. Geschwindigkeit
    Von Banditxxy im Forum Flash Plattform
    Antworten: 4
    Letzter Beitrag: 22.12.04, 01:32
  2. Dsl-geschwindigkeit-
    Von MasterLutz im Forum Internet, DSL & Flatrate
    Antworten: 6
    Letzter Beitrag: 17.11.04, 21:35
  3. Geschwindigkeit
    Von UULF im Forum 3D Studio Max
    Antworten: 3
    Letzter Beitrag: 24.09.04, 07:17
  4. XP und Geschwindigkeit
    Von Avariel im Forum Office-Anwendungen
    Antworten: 7
    Letzter Beitrag: 21.02.03, 11:45
  5. geschwindigkeit
    Von koma666 im Forum Relationale Datenbanksysteme
    Antworten: 6
    Letzter Beitrag: 11.07.02, 10:56