동적으로 3개씩 할당되는 배열
엄마몬
2023.04.01
-1이 입력될때 까지 정수를 입력받아서 -1전까지 입력받은 정수들을 화면에 출력하는 프로그램인데요.
동적할당으로 배열의 크기를 5까지 입력하고 그 이상의 입력이 들어오면 배열을 3개씩 늘려야 되는데..
당최 손도 못되겠네요..
-
과꽃
hugsdevil//
주소값이 날라간다는게 주소값을 잃어버린다는 의미인가요?
그렇다면 그건 realloc을 잘못 사용해서 그런겁니다. -
들샘
realloc 쓰면 그 원래 주소값이 날아가지 않나요?
뭐 주소를 알고 있다면 상관없지만... -
즐겨찾기
realloc 쓰는 것을 고려해봄직한?
-
펴라
for ( int i = 0 ; i 기존배열길이 ; i ++){ 새배열[i] = 기존배열[i]; } 요런식?
-
가을귀
memcpy 쓰시면 됩니다.
-
아연
3번에 기존배열의 데이터를 새로운 배열에 복사를 어떻해 하는 거죠?
-
상1큼해
malloc 함수를 사용하시죠? 위의 로직을 글로 써보면
1. 5개 이상 받을 경우
2. 기존 배열 길이 + 3의 새로운 동적 배열 생성
3. 기존 배열의 데이터를 새로운 배열에 복사
4. 기존 배열 메모리 해제
순으로 코딩하면 되겠습니다