中级会员
 
- 积分
- 402
- 金钱
- 402
- 注册时间
- 2015-12-31
- 在线时间
- 108 小时
|
1金钱
想在程序中定义一个较大的二维数组采用动态内存分配函数malloc分配内存并且释放;不成功,请指教// uint8_t ** DataPack; DataPack=(uint8_t **)malloc(12);
for( i=0;i<12;i++)
{
DataPack[i]=(uint8_t *)malloc(12);
}
当接收开始的时候开始接收数据并存到开辟的二维数组中
DataPackCpy((uint8_t *)(DataPack+12*Packcnt++),&UART_Rx_data[4],LINKI2UBOOTLEN);
存储函数定义
void DataPackCpy(uint8_t *p,uint8_t *arr,uint8_t len)
{
uint8_t i;
for(i=0;i<len;i++)
{
*p++=*arr++;
}
}
存储完成后解析并释放内存
for( i=0;i<12;i++)
{
free(DataPack[i]);
}
free(DataPack);
不解,调试不成功???
|
|