主要是注意int和char的区别
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<stdint.h>
#define MAX_COUNT 10
int main(){
uint8_t test[1500] = {
0};
uint8_t *m_buffer[MAX_COUNT]; // 指针数组
int *m_buffer_len[MAX_COUNT];
const uint8_t *m_str = "test for array";
for(int i=0; i<MAX_COUNT; i++){
m_buffer_len[i] = (int*)malloc(sizeof(int));
*m_buffer_len[i] = i;
memcpy(test, m_str, strlen(m_str));
m_buffer[i] = (uint8_t*)malloc(strlen(m_str));
memcpy(m_buffer[i], test, strlen(m_str)); //注意char和int的区别
}
for(int i=0; i<MAX_COUNT; i++){
printf("%d\n", *m_buffer_len[i]);
free(m_buffer_len[i]);
printf("%s\n", m_buffer[i]);
free(m_buffer[i]);
}
return 0;
}