RADARDEMO_clusterTracker_errorCode RADARDEMO_clusterTracker_run(
IN void * handle,
IN RADARDEMO_tracker_input * input,
IN float dt,
OUT RADARDEMO_tracker_output * output)
{
uint32_t index;
uint16_t nTrack, i;
RADARDEMO_clusterTracker_handle *clusterTrackerInst;//RADARDEMO_clusterTracker_handle是一个结构体
RADARDEMO_clusterTracker_errorCode errorCode = RADARDEMO_CLUSTERTRACKER_NO_ERROR;
clusterTrackerInst = (RADARDEMO_clusterTracker_handle *) handle;//这里有疑问?上面已经用结构体RADARDEMO_clusterTracker_handle定义了指针,这里为什么又要重复,是为了把handle这个指针类型由void转为结构体类型了吗?
clusterTrackerInst->numOfInputMeasure = input->totalNumInput;
。…………中间略去了一些无关代码
// Create measurements initialize pendingIndication, associationList, numAssoc and distance matrix
index = 0; clusterTrackerInst->pendingIndication = (uint16_t *) &clusterTrackerInst->scratchPad[index];//这里疑问??scratchPad是结构体中的一个char类型指针,这里为什么要类型转换后,要令指针pendingIndication等于scratchPad,另外想问下指针后面加【】是干嘛的?
for (i = 0; i < RADARDEMO_CT_MAX_NUM_TRACKER; i++)
clusterTrackerInst->pendingIndication[i] = 1;//这里的疑问是指针pendingIndication后面的【】,指针类型为uint16_t,这里要循环64次??
index += RADARDEMO_CT_MAX_NUM_TRACKER * sizeof(uint16_t);
clusterTrackerInst->associatedList = (int16_t *) &clusterTrackerInst->scratchPad[index];
for (i = 0; i < RADARDEMO_CT_MAX_NUM_TRACKER * RADARDEMO_CT_MAX_NUM_ASSOC; i++)
clusterTrackerInst->associatedList[i] = -1;
index += RADARDEMO_CT_MAX_NUM_TRACKER * RADARDEMO_CT_MAX_NUM_ASSOC * sizeof(int16_t);
我的疑问都写在代码中,请求各位大佬不吝指教
Chris Meng:
user6231379clusterTrackerInst = (RADARDEMO_clusterTracker_handle *) handle;//这里有疑问?上面已经用结构体RADARDEMO_clusterTracker_handle定义了指针,这里为什么又要重复,是为了把handle这个指针类型由void转为结构体类型了吗?
对
user6231379 clusterTrackerInst->pendingIndication = (uint16_t *) &clusterTrackerInst->scratchPad[index];//这里疑问??scratchPad是结构体中的一个char类型指针,这里为什么要类型转换后,要令指针pendingIndication等于scratchPad,另外想问下指针后面加【】是干嘛的?
赋值时,等式左右两边的类型需要一致。
user6231379 for (i = 0; i < RADARDEMO_CT_MAX_NUM_TRACKER; i++) clusterTrackerInst->pendingIndication[i] = 1;//这里的疑问是指针pendingIndication后面的【】,指针类型为uint16_t,这里要循环64次??
这个代码时初始化pendingIndication参数,循环次数时可能最大的tracker数。
user6231379:
回复 Chris Meng:
想问下这里指针后面加[]是ps[i] 等价于 *(ps+i)吗?
Chris Meng:
回复 user6231379:
你好,
网上有很多资源,建议多搜索。
www.uucan.cn/zs-sywfawdff.html