我正在使用char *數組來創建緩衝區,以將信息從多個映射線程移動到還原線程。我需要使陣列循環,但是,當陣列空間不足時,我不斷收到分段錯誤。我該如何製作圓形陣列?我現在有循環字符數組緩衝區 - c
for(j = 0; j < i; j++){
int next = mr->nextIndex + j;
if(next > 1023){
next = 0;
}
mr->buffer[next] = temp[j];
}
陣列被設置爲,
new_mr->buffer = malloc(sizeof(char *) * MR_BUFFER_SIZE);
與宏爲1024的任何幫助表示讚賞。
溫度是
char *temp = malloc(sizeof(char *));
,並從
memcpy(temp, kv, i);
獲取其值和KV傳遞到從主要功能。
沒有足夠的信息。什麼是溫度和我是什麼? – Pemdas
temp是char *的char指針大小,i是被複制到緩衝區的數據的大小(以字節爲單位) –
temp是什麼?顯示代碼。 – Pemdas