Frage von goveganyolo, 57

C++ zeigt Fehler bei system befehl?

Hi Leute,

wenn ich zb in eine C++ Datei reinschreibe : system("del c:\desktop\Test100*.* /s /q"); zeigt code::blocks einen Fehler: unknown escape Sequenz

Könnt ihr mir weiterhelfen? Und bitte sagt nicht ich sollte das mit richtihgem C++ machen, es geht ja nicht nur um diesen Befeh sonder bei vielen wo zb % oder /BLABLABLA drin ist.. Also danke im vorraus

Antwort
von Tschoo, 19

Hallo!

Das Zeichen "\" ist der sogenannte "Flucht-Charakter", so habe ich es mal gelernt (ist ein komischer Name), dieser bedeutet, dass das nächste Zeichen so zu behandeln ist, wie es dasteht. An deinem Beispiel muss es also heissen:  

system("del c:\\desktop\\Test100*.* /s /q");

Andere Anwendungen sind z.B. "Joe\'s Schnapshaus" --> wenn dieser String in einer XML-Datei definiert ist, damit "Joe's Schnapshaus" rauskommt, da der " ' "  eine besondere Bedeutung hat ....

Gruß

Antwort
von Mikkey, 42

Du musst die Backslashes in C-Literalen verdoppeln.

Kommentar von goveganyolo ,

Also wie müsste ich das machen :) einfach \\?

Kommentar von Mikkey ,

system("del c:\\Desktop\\Test100*.* /s /q");

Kommentar von goveganyolo ,

zeigt zwar keine fehler an aber es funktioniert nicht

Kommentar von ralphdieter ,

Probier' mal, ob der Befehl auf der Kommandozeile funktioniert. Eventuell müssen die Switches /s /q vor den Dateinamen.

Funktioniert wenigstens system("dir c:\\Desktop\\Test100*.*");?

Antwort
von J0T4T4, 25

Keinen Support für system().

Antwort
von DontHaveAName, 31

Schon wieder etwas was du problemlos googlen hättest könne.. Wäre aber zu einfach, richtig?? ;)

Benutze \\ statt \...

Kommentar von goveganyolo ,

Ok die Frage klingt blöd aber ich habe nichts gefunden :)

Kommentar von DontHaveAName ,

Ja ja, verstehe schon, genau wie bei dem Batch Problem... :).

Kommentar von goveganyolo ,

Also ich habe es mal mit system("del c:\\Desktop\\Test100*.* /s /q");  versucht aber es funktioniert nicht .. Ein Fehler wird mir aber nicht angezeigt...

Kommentar von maximilianus7 ,

vielleicht gibt es kein verzeichnis C:\Desktop ?

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten