스 니펫을 첨부하고 있습니다. 나는 많이 싫어했다. 필요한 경우 좀 더 첨부합니다Segfault - 유효하지 않은 포인터
unsigned char *datap = malloc (MAXSIZE);
unsigned char *datapor = datap;
//Here Im cutting a lot
while((direntp = readdir(dirp)) != NULL)
{
datap = datapor;
}
//this line gives me exception
free(datap);
GCC 쇼 :
*** glibc detected *** /home/xf/xf/unzipper: free(): invalid pointer: 0x00002aaaab0b0108 ***
당신이 많은으로 절단 것 같다 (I는 생략 된 코드
datapor
변경.의 값이 있다고 가정하고). 표시하는 코드는 메모리 관리를 엉망으로 만들어서는 안됩니다. 'datall'과'datap'에 대한 각각의 연산을'malloc()'과'free()'사이에 보여주고 싶을 수도 있습니다. – alkvalgrind valgrind valgrind! – Dariusz