在Visual Studio 2008 Professional中使用timeGetTime()时出现问题

时间:2011-02-15 00:47:42

标签: c visual-studio-2008 time

好吧,我很擅长使用VS.我想弄清楚OpenGl程序(在C中)更新之间经过的时间,我正在计划使用timeGetTime()。

我有

#include <windows.h>

在我的程序的顶部。同样在“Project&gt; Properties&gt; Linker&gt; Input”下,我有“Additional Dependencies”包括“winmm.lib”。现在每当我尝试使用timeGetTime()时,它都会给我两个错误:

Error   63  error LNK2019: unresolved external symbol _timeGetTime referenced in function _main ***.obj 

Error   64  fatal error LNK1120: 1 unresolved externals C:\***  

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:4)

确保您没有定义WIN32_LEAN_AND_MEANMMNOTIMER个宏,或timeGetTime()的原型不会包含在mmsystem.h中。

另一种可能性是你在一个标题(或.c源文件)中有timeGetTime()的其他声明,这些标题是由于某种原因而不是mmsystem.h中的声明而被选中的。 / p>

链接器应该查找的符号是:

__imp__timeGetTime@0 (or __imp_timeGetTime on x64)

_timeGetTime

答案 1 :(得分:0)

如果您正在尝试计时,我建议您使用QueryPerformanceFrequencyQueryPerformanceCounter代替timeGetTime。这些工作通过使用Windows中的高性能计数器来实现,这将为您提供更好的计时准确性。