PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : in datein schreiben



mithras
26-07-2002, 20:58
ok, ich will in die datei script.bat schreiben, der code dazu ist wie unte zu sehen, (windows basis)
mein prob ist nur, dass die datei script.bat nicht in dem verzeichnis liegt wo das c programm ist, ich muss also den pfad angeben, wenn ich aber nun c:\script.bat angebe, bricht das programm mit einer fehlermeldung ab.
wie ist der code für pfade?


#include <stdio.h>

int main()
{

FILE *fp;
fp = fopen("script.bat", "a+");
fprintf(fp, "blabla1");
fclose(fp);

return 0;
}


thx, mithras

tkortkamp
26-07-2002, 21:29
Hmm, sollte so funktionieren:


#include <stdio.h>

int main()
{

FILE *fp;
fp = fopen("c:\\script.bat", "a+");
fprintf(fp, "blabla1");
fclose(fp);

return 0;
}

anda_skoa
26-07-2002, 21:39
Als Erklärung zu tkortkamps Lösung:

Der Backslash markiert in C den Beginn einer Escapesequenz, das heißt, dass das folgende Zeichen eine besondere Bedeutung hat und nicht für das Zeichen selbst steht.

Beispiele sind \n das für newline steht, also Zeilenumbruch, oder \t für Tabulator.

Wenn man den Backslash also asl Zeichen haben will, muß man das "escapen" rückgängig machen, bzw aufheben, in dem man den Backslash selbst "escaped", also in dem man \\ schreibt.

Hoffe das war verständlich.

Ciao,
_

tkortkamp
26-07-2002, 22:34
Zur Ergänzung:
http://www.pronix.de/ckurs/ckurs9.html <-- Hier wird das alles nochmal sehr ausführlich erklärt.

c ya,
Tobias

mithras
27-07-2002, 11:24
thx.
klar, da hätte ich eigentlich selber draufkommen müssen *g

bye
mithras

anda_skoa
27-07-2002, 11:41
Manchmal (meistens?) ist das naheliegnste am schwersten zu finden.

So wie die hochgeschobene Sonnenbrille, die man minutenlang verzweifelt sucht :D

Ciao,
_