inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

독하게 C를 배운 사람을 위한 선형 자료구조

범위 검색 기능 적용

섹션4 범위검색 강의 질문있어요.

해결된 질문

398

한지수

작성한 질문수 2

0

올려주신 자료 04_RangeSearch02에서

void SearchByAge(void) 함수 마지막 부분 질문있습니다.

SearchByAgeRange함수에서 동적할당한 주소를 리턴하고

void **pResult로 받았습니다.

void** pResult = SearchByAgeRange(min, max, &cnt);

USERDATA* pTmp = NULL;

for (int i = 0; i < cnt; ++i)

{

pTmp = (USERDATA*)pResult[i];

printf("%d, %s, %s\n", pTmp->age, pTmp->name, pTmp->phone);

}

free(pResult); <----요부분입니다.

이제 해제를 해줘야 하는데요

free(pResult)를 한 번에 해도 괜찮은건가요?

아니면 for문 돌릴 때 free(pResult[i])로 해야하나요?

c 코딩-테스트 알고리즘 vc++

답변 2

1

한지수

앗 해결됐습니다.

0

널널한 개발자

답변 전에 스스로 해결 하셨군요! 멋지십니다. 😄

그럼에도 사족을 달아 보자면...

 

한 대상에 대해 포인터는 얼마든지 여럿이 될 수 있습니다. 동적 할당된 메모리에 대해 반드시 해제를 해야 한다는 강박 때문에 포인터가 가리키는 대상은 무조건 free() 시켜야 한다는 고정 관념이 생길 수 있습니다. 이미 아시겠지만...불필요한 관념이라 하겠습니다. 이 문제를 계기로 포인터에 대한 개념적 이해가 한 수준 성장하셨기를 진심으로 바랍니다. 고맙습니다. 😄

1

한지수

늦은 시간 답변 고맙습니다.

05_adtFileIO 개정이력에 대한 질문

0

42

2

마지막 열의 노드를 삭제하였을때 읽기 엑세스 위반 발생 건

0

61

2

첫번째 루프에서 최소값을 못찾았는데 계속 진행하는 이유가 무엇인가요?

0

46

1

[질문]: [섹션4] -> [2중 연결 리스트로 전환] -> [21:30]

0

129

2

인덱스정렬 강의, 04_ListAndIndex질문드립니다.

0

125

1

예제는 어디서 다운로드 받을 수 있나요?

0

178

2

04_MultiIndex 예제에서 질문이 있습니다

0

120

1

헤드노드에 관해..

0

231

3

AddNewNode 함수 구현시 질문입니다.

0

160

2

Event Loop

0

191

1

인덱스정렬 강의, 04_ListAndIndex질문드립니다.

0

192

1

CPU의 다른 이름 Machine 강의 질의

0

273

4

스택의 POP코드 질문드립니다.

0

259

1

adtFileIO 예제코드관련 질문 있습니다.

0

170

1

ADT강의 관련 질문 있습니다.

0

231

2

RangeSearch002 의 singlelist.c 파일 중 질문 있습니다.

0

192

1

섹션4 자료 자체와 정렬된 인덱스 분리 내용 질문

0

252

2

자료 자체와 정렬된 인덱스 분리 강의에서 질문

0

234

2

구현 연습에 대한 개인적 의문

0

279

1

05_adtFileIO 프로젝트 문의

0

318

2

CLI UI적용 강의에서 질문드립니다.

0

333

1

SearchToRemove와 RemoveNode가 분리되어야 할 필요가 있을까요?

0

293

1

05_adtFileIO 프로젝트 문의

0

257

1

자료 자체와 정렬된 인덱스 분리 (인덱스 정렬) - 인덱스 범위 코드에 버그가 있어서 질문 드립니다.

0

304

2