在C语言中,st_mtime
是struct stat
结构体中的一个成员,用于表示文件的最后修改时间。st_mtime
的类型是time_t
,它是一个长整型数据,表示从1970年1月1日开始计算的秒数。
要比较st_mtime
的年份,可以将st_mtime
转换为struct tm
结构体,然后获取年份进行比较。
下面是一个示例代码:
#include
#include
#include
int main() {
struct stat fileStat;
// 获取文件状态
if (stat("file.txt", &fileStat) == -1) {
printf("Failed to get file status.\n");
return 1;
}
// 将st_mtime转换为struct tm结构体
struct tm *timeinfo;
timeinfo = localtime(&fileStat.st_mtime);
// 获取年份
int year = timeinfo->tm_year + 1900;
// 打印年份
printf("The year of st_mtime is: %d\n", year);
return 0;
}
在上面的代码中,我们通过stat
函数获取文件的状态,并将其保存在fileStat
结构体中。然后,使用localtime
函数将st_mtime
转换为struct tm
结构体,然后通过访问tm_year
成员获取年份。由于tm_year
表示的是从1900年开始的年数,所以需要加上1900。
最后,我们使用printf
函数打印出st_mtime
的年份。
下一篇:比较C语言中的西班牙字符