게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
malloc과 free
게시물ID : programmer_21168짧은주소 복사하기
작성자 : 머늬
추천 : 0
조회수 : 2520회
댓글수 : 5개
등록시간 : 2017/08/03 18:57:34
안녕하세요 malloc과 free를 사용하는데

다섯개의 정수를 입력받는 코드를 짰는데요

malloc을 호출하여 메모리를 할당받고 그리고 그 메모리에

입력된 정수를 저장하는 것입니다.

코드는 이렇습니다.

int main(){
printf("input 5 numbers : ");
int * input = (int*)malloc(12);
int i = 0;
for(i = 0; i<5 ; i++)
scanf("%d",(input+i));
free(input);
}

실행결과는 이렇습니다.

*** Error in './ex0003' : free() : invalid next size (fast) : 0x~~~~~
Aborted

런타임 에러가 발생되구요,,,

malloc()값에 12를 넣으면 에러가 나고 13을 넣으면 에러가 나지 않네요

제 생각에는 int형(4)x5 생각해서 20밑으로는 에러가 나야하는데

12부터 에러가 나네요,,,

실행환경은 raspberry pi입니다.

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호