所以下面的代碼引起的錯誤:堆塊改性過去要求2錯誤的大小用C
ERROR// free pointers created with malloc
for (int i = 0; i < 3; i++) {
if (rt_offset_rs[i] != NULL) {
free(rt_offset_rs[i]); // <== AT THiS LINE
}
:在0000000000331DD0 堆塊在0000000000331DE2過去改性請求大小的2
我根本不理解這個錯誤。 以下是我操縱指針rt_offset_rs代碼:
char** rt_offset_rs;
rt_offset_rs = malloc(3 * sizeof(char*));
if (rt_offset_rs == NULL) {
fprintf(outputFilePointer, "no more memory");
exit(1);
}
for (int i = 0; i < 3; i++) {
rt_offset_rs[i] = malloc(2 * sizeof(char));
if (rt_offset_rs[i] == NULL) {
fprintf(outputFilePointer, "no more memory");
exit(1);
}
}
我明白你的意思了,我把它們全部改爲3,但它不能解決我的問題。但是,謝謝 –
如果您顯示更多相關的代碼,我們可能會幫助更多。 – MByD