Quiero conseguir la última fecha de modificación de un archivo en C Casi todas las fuentes que encontré uso algo a lo largo de este fragmento:Obtener la última fecha de modificación de un archivo en C
char *get_last_modified(char *file) {
struct tm *clock;
struct stat attr;
stat(file, &attr);
clock = gmtime(&(attr.st_mtime));
return asctime(clock);
}
Pero el attr
doesn' t incluso tiene un campo st_mtime
, solo st_mtimespec
. Sin embargo, al usar esto, mi Eclipse me dice que passing argument 1 of 'gmtime' from incompatible pointer type
en la línea clock = gmtime(&(attr.st_mtimespec));
¿Qué estoy haciendo mal?
PS: Estoy desarrollando en OSX Snow Leopard, Eclipse CDT y el uso de GCC como compilador multiplataforma de
Sí, de lo contrario 'stat' en sí no estaría disponible. –
Aunque OT: no desea almacenar la referencia devuelta por 'get_last_modified()' ¿verdad? 'asctime()' devuelve una referencia a la memoria estática, cuyo contenido se sobrescribirá en cada llamada sucesiva. – alk
Solo se llama una vez, pero lo tendré en cuenta si alguna vez cambia :) –