データを連続して char *buffer に読み込みました。次に、その *buffer 内の文字列を取得して、多次元配列にコピーする必要があります。
そのため、バッファからの最初のデータは temp_message[0] に移動し、バッファからの 2 番目の読み取りは temp_message[1] に移動します。
文字列/データの長さは 10 です....それが temp_message[4][10] を宣言した理由です。
私のコード:
char temp_message[4][10];
//receiving....
for(i=0;i<IR_COM_NUMBER;i++) {
if (wb_receiver_get_queue_length(receiver[i]) > 0) {
/* read current packet's data */
***const char *buffer = wb_receiver_get_data(receiver[i]);***
count[i]=0;
if (message_printed[i] != 1) {
***temp_message[i][]=buffer;***
/* print null-terminated message */
printf("Communicating: received \"%s\" from receiver %d \n",buffer,i);
message_printed[i] = 1;
}
/* fetch next packet */
wb_receiver_next_packet(receiver[i]);
message_printed[i]=3;
} else {
count[i]++;
if (message_printed[i] !=2 && count[i]>20) {
printf("Communication broken from receiver %d!\n",i);
message_printed[i] = 2;
}
}
}