时间未在范围内声明,我如何找到包含文件的文件?

时间:2012-10-04 04:58:54

标签: xcode macos cocoa time

这让我疯了,我已经坚持了几个小时。我在我的项目中的几个文件中使用time.h,并且当我尝试使用函数time()时,每个文件都会收到错误“时间未在范围内声明”。奇怪的是time_t被定义了,我没有错误。我想也许它正在以某种方式拉入C ++版本所以尝试使用命名空间std ::但这也不起作用。 struct tm和localtime也未在范围内声明。所有代码在其他系统BTW上编译良好。

我在这里疯了,我怎么能弄清楚文件正在使用什么标头,定义了什么或者发生了什么?我不知道怎么办,请帮忙!

我在Xcode 3.2.5中使用GCC 4.2和10.6 SDK

如果你想看到这里的代码,它是没有用的,但我认为它必须是编译器/包含文件的问题。

            time_t long_time;
            time(&long_time);
            tm* st = localtime(&long_time);
            sprintf(temp, "%02d:%02d:%02d %02d.%02d.%04d  ",
                    st->tm_hour, st->tm_min, st->tm_sec, st->tm_mon+1, st->tm_mday, st->tm_year+1900);

1 个答案:

答案 0 :(得分:0)

发现了这个问题。我正在使用enet,它有一个名为time.h的标题,因为xcode无法在我的用户标题搜索路径中包含它的子目录下找到enet文件,显然编译器首先在用户路径中查找并且正在拉入enet time.h而不是系统一