Leerzeichen in Pfadangaben

  • Hallo erstmal,


    Ich habe jetzt mit C++ angefangen und komme bei der Eingabe und dem Auslesen von Pfadangaben nicht weiter. Ich will, dass ich in ein einfaches DOS Fenster einen Pfad eingeben kann, der auch Leerzeichen enthält, das dann in einer Stringvariable speichern und später weiterverwerten. Wenn ich jetzt einen Pfad in das Programm eingebe und den String danach wieder hinschreiben lasse, wird der String beim ersten Leerzeichen beendet.
    Wie krieg ich es hin, dass auch Leerzeichen im String übernommen werden?

    Hoffe auf schnelle Antwort

    mfG Alemarius Nexus

  • Hallo

    Kannst du eventuell mal etwas code zeigen? Du solltest dir auf jeden Fall getline() anschauen udn die diversen string-Funktionen, falls du mit std:strings arbeitest.

    chrische

  • Ehem, das ist eine Eigenheit der Shell!
    Das Leerzeichen diehnt zum trennen der Befehle.
    Escapen dürfte da helfen:

    Code
    deinprogramm.exe "/einpfad mit leerzeichen/"

    Win·dows
    Noun.
    A thirty-two bit extension and graphical shell to a sixteen-bit patch to an eight-bit operating system originally coded for a four-bit microprocessor which was written by a two-bit company that can't stand one bit of competition.

  • Klappt leider auch mit Escapen nicht. Ich geb in das Programm z.b.

    "Mehrere Wörter"

    ein und bekomme

    "Mehrere

    zurück. Hier der Code:


  • Zitat

    Und deswegen habe ich dir getline empfohlen.

    Sry, hab ich ganz vergessen zu schreiben. Getline löst bei mir nen Kompilierungsfehler aus:

    Es kann sein, dass ich die Funktion auch ganz falsch verstanden habe, kannst du mir vielleicht ein Beispiel (am besten sowas wie meins) geben? Bin noch ziemlicher Anfänger.