Ich möchte C. das Datum der letzten Änderung einer Datei erhalten Fast alle Quellen, die ich nutzen, um etwas entlang dieser Schnipsel gefunden:Erste das Datum der letzten Änderung einer Datei in C
char *get_last_modified(char *file) {
struct tm *clock;
struct stat attr;
stat(file, &attr);
clock = gmtime(&(attr.st_mtime));
return asctime(clock);
}
Aber die attr
doesn‘ t haben sogar ein Feld st_mtime
, nur st_mtimespec
. Doch wenn ich dies verwende, sagt mir mein Eclipse, dass passing argument 1 of 'gmtime' from incompatible pointer type
auf der Linie clock = gmtime(&(attr.st_mtimespec));
Was mache ich falsch?
PS: ich auf OSX Snow Leopard, Eclipse-CDT bin die Entwicklung und Verwendung von GCC als Cross-Platform-Compiler
Ja, sonst wäre "stat" selbst nicht verfügbar. –
Obwohl OT: Sie wollen nicht die Referenz von 'get_last_modified()' gespeichert speichern, nicht wahr? 'asctime()' gibt einen Verweis auf statischen Speicher zurück, dessen Inhalt bei jedem nachfolgenden Aufruf überschrieben wird. – alk
Es wird nur einmal aufgerufen, aber ich behalte es im Hinterkopf, sollte sich das jemals ändern :) –