이 오류에서 많은 스레드를 발견했지만 저에게 적합한 솔루션을 찾을 수 없었습니다. PGM 이미지에서 데이터를 읽고 매트릭스에 넣으려고합니다. 내 문제는 메모리 재 할당이 오류 realloc: invalid old size
과 함께 실패한다는 것입니다. 다음은 재 할당이 수행 된 방법을 보여주는 코드에서 발췌 한 것입니다. 이 줄 이후 머리, 상단 가운데realloc : 유효하지 않은 이전 크기
typedef struct num_matrix {
int ** data;
int rows;
int cols;
} matrix;
[in loadPGMImageFromFilename]
matrix m;
m.data = (int**)malloc(0*sizeof(int));
loadPGMImageData(m);
[in void loadPGMImageData(matrix &m)]
ss >> m.rows >> m.cols; // <- sets rows and cols, seems to work
allocateMatrixMemory(m);
void allocateMatrixMemory(matrix &m) {
int** temp = (int**) realloc(m.data, m.rows*sizeof(int)); // <- ERROR
//more stuff
}
'(int **) malloc (0 * sizeof (int));'? 이것은 의도적입니까? –
은 무엇입니까? [tag : c] ?? ... – LPs
'ss >> m.rows >> m.cols; –