好吧,我很擅长使用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:\***
我该如何解决这个问题?
答案 0 :(得分:4)
确保您没有定义WIN32_LEAN_AND_MEAN
或MMNOTIMER
个宏,或timeGetTime()
的原型不会包含在mmsystem.h
中。
另一种可能性是你在一个标题(或.c源文件)中有timeGetTime()
的其他声明,这些标题是由于某种原因而不是mmsystem.h
中的声明而被选中的。 / p>
链接器应该查找的符号是:
__imp__timeGetTime@0 (or __imp_timeGetTime on x64)
不
_timeGetTime
答案 1 :(得分:0)
如果您正在尝试计时,我建议您使用QueryPerformanceFrequency和QueryPerformanceCounter代替timeGetTime。这些工作通过使用Windows中的高性能计数器来实现,这将为您提供更好的计时准确性。