我在 ubuntu 上使用一个非常简单的单行代码来获取 C 中的当前时间,但它给了我以下错误: Called object 'time' is not a function
代码为: int currentTime = (unsigned int)time(NULL);
这个错误根本没有意义,可能的原因是什么?
无法看到实际代码会使其变得困难,但首先,您需要确保已包含time.h
以便声明函数。
其次,您需要确保代码中没有其他称为 time
的东西。
例如,此代码工作正常:
#include <stdio.h>
#include <time.h>
int main(){
int currentTime = (unsigned int)time(NULL);
printf("%un", currentTime);
return 0;
}
而这段代码:
#include <stdio.h>
int time;
int main(){
int currentTime = (unsigned int)time(NULL);
printf("%un", currentTime);
return 0;
}
生产:
testprog.c: In function ‘main’:
testprog.c:5:38: error: called object ‘time’ is not a function
在我的 Debian 盒子上,它就像 Ubuntu,只是更好:-)