art*_*rxe 8 c strptime compiler-warnings
键入man strptime它,这个函数需要声明_XOPEN_SOURCE并包含time.h头.我做的.但是,当我尝试编译我的代码时,我得到:
./check.c:56:警告:隐式声明函数'strptime'
看看我的代码:
int lockExpired(const char *date, const char *format, time_t current) {
struct tm *tmp = malloc(sizeof(struct tm *));
time_t lt;
int et;
strptime(date, format, tmp);
lt = mktime(tmp);
et = difftime(current, lt);
if (et < 3600)
return -et;
return 1;
}
Run Code Online (Sandbox Code Playgroud)
函数声明也是:
char *strptime(const char *s, const char *format, struct tm *tm);
谁能告诉我我的问题来自哪里?
Joe*_*Joe 20
我发现我需要定义__USE_XOPEN并_GNU_SOURCE让它变得快乐.