C 中的状态是什么?它是关键字/定义/返回值吗?


void slpEnableService (void)
{
STATUS status;
slp_task_msg_t msg;
int slpEventBuf = 1;
msg.id = SLP_MSG_ENABLE;
status = msgQSend(slp_msg_queue, (char *)&msg, sizeof(slp_task_msg_t),
NO_WAIT, MSG_PRI_NORMAL);
assert(status == OK);
write(slp_fifo_wr_fd, &slpEventBuf, sizeof(slpEventBuf)); 
}

这里的状态是什么?

C 中没有 "STATUS"。

它可能是在我们不知道的标头中定义的。

它可能是一个结构/宏/枚举,请检查包含在当前代码文件中的头文件。

不知道你的头文件中有什么东西,就不可能回答。

鉴于它都是大写的,它可能是一个#define宏。

给定它的位置 - 这是您希望在变量声明中看到类型的位置 - 它可能是定义类型的宏。

鉴于它被用作msgQSend()的返回类型,它很可能是一个整数类型,实际上,它可能是int

在您的代码中的某个地方(可能在标头中)会有一行,例如

#define STATUS int

或可能

typedef int STATUS;

甚至可能是一个枚举

typedef enum { OK = 0, ERROR = -1 } STATUS;

最新更新