我有以下代码来启动一个新线程
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() 函数。我怎样才能实现它?
最佳答案
void* 参数可用于传递任何内容。但是获取它的地址是没有意义的:
int PointNumber = (int)arg;
关于c++ - 将参数传递给 _beginthread 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21744803/