Windows 如何在ReleaseSemaphore中使用信号量的上一个计数

Windows 如何在ReleaseSemaphore中使用信号量的上一个计数,windows,winapi,data-structures,function,resources,Windows,Winapi,Data Structures,Function,Resources,正在查找如何从 创建用于存储LPLONG lpPreviousCount的基本局部变量时遇到问题 输入并打印出来。看起来我需要一个指向变量的指针,但运气不太好 如果你能给我指出正确的方向,我将不胜感激 谢谢。创建一个长变量并向其传递指针: LONG previousCount; BOOL success = ReleaseSemaphore(hSemaphore, releaseCount, &previousCount); if (success) { //do somethi

正在查找如何从
创建用于存储LPLONG lpPreviousCount的基本局部变量时遇到问题 输入并打印出来。看起来我需要一个指向变量的指针,但运气不太好

如果你能给我指出正确的方向,我将不胜感激


谢谢。

创建一个长变量并向其传递指针:

LONG previousCount;
BOOL success = ReleaseSemaphore(hSemaphore, releaseCount, &previousCount);
if (success) {
    //do something with previousCount
}

这是因为LPLONG是指向LONG的指针。您必须创建LONG变量作为ReleaseSemaphore存储值的位置。

似乎不喜欢这样。获取通过引用传递的编译错误。此代码应该可以工作。请发布您的准确代码和错误消息。