Используется функция stat()
.В достаточно недавних версиях glibc st_mtim
(примечание: без трейлинга e
) - это поле типа struct timespec
, в котором хранится время изменения файла:
struct stat st;
if (stat(filename, &st)) {
perror(filename);
} else {
printf("%s: mtime = %lld.%.9ld\n", filename, (long long)st.st_mtim.tv_sec, st.st_mtim.tv_nsec);
}
Необходимо проверить наличиеst_mtim
в struct stat
в вашей системе сборки и будьте готовы вернуться к st_mtime
(с типом time_t
и разрешением всего 1 секунда), если его нет.