fopen - frage
-
moin
wie bekomme ich folgendes raus:
wenn ich
FILE *fp;
fp = fopen("/mnt/nand/test.cfg","r");habe und nun in einer späteren funktion, der ich fp übergebe,
wissen will, wie lautet der pfad den ich fp mit übergeben hab.welche funktion von fp muss ich da aufrufen ?
also ich will als ergebnis: "/mnt/nand/test.cfg" oder "/mnt/nand/"
wie mach ich das ?
mfg LT
-
http://www.cplusplus.com/reference/clibrary/cstdio/FILE.html
also so wie es aussieht, hat FILE keinen Member der den Pfad als string oder char* irgendwie speichert.Möglichkeit wäre das du einfach den Pfad vorher wegspeicherst und ihn dann so an fopen() übergibst, dann kannste später auch woanders den Pfad übergeben. aber die beste lösung ist das nicht. Warum verwendest du eigentlich kein C++?
-
Du könntest dir eine Struktur anlegen, die den File-Pointer und den String mit dem Dateinamen enthält, und diese an spätere Funktionen übergeben.
-
Firefighter schrieb:
Warum verwendest du eigentlich kein C++?
Vllt programmiert er ja ANSI C und hat sich im Forum geirrt :).
Davon ab speichert afaik std::i/ofstream auch keinen Dateinamen :).
rya.
-
Das ist richtig.Aber hab ich ja auch niemals behauptet oder? :p Die Idee mit dem Struct ist meines erachtens eine ganz gute.
-
jo ok thx ... ich habs über ne kleine funktion gemacht ... thx euch