0

我有以下代码来启动一个新线程

int number = 10;
_beginthread(ModbusReadWrite, 0, (void*)number);

功能是:

void ModbusReadWrite(void *arg)
{
    char inBuffer[BUF_SIZE];
    int PointNumber = &arg;
    ...
}

它显示一个错误:

error C2440: 'initializing' : cannot convert from 'void **' to 'int'

因此,我需要定义 int 类型的新参数并将其传递给 ModbusReadWrite() 函数。我怎样才能实现它?

4

1 回答 1

2

void* 参数可用于传递任何内容。但是获取它的地址是没有意义的:

int PointNumber = (int)arg;
于 2014-02-13T04:24:06.020 回答