在C++中:
0 或者字面值 nullptr 能转换成任意指针类型;
指向任意非常量的指针能转换成 void*; 指向任意常量对象的指针能转换成 const void*;
参考:C++类型转换
所以 void** 类型可以用以下方式理解:
void **ppDefineBuffer = NULL; // 这是一个指向 void* 的指针。 或者说ppDefineBuffer是一个数组,里面存放void*元素
pRum->lRumUnitId = atoi64((char *)(ppDefineBuffer[0])+i*pLenArray[0]); // 将数组ppDefineBuffer的首元素偏移后,强制转换成字符串指针
strncpy(pRum->szRatableNodeId,(char *)(ppDefineBuffer[1])+i*pLenArray[1],20);