✅ 목표 (Goal)

C언어에서 이러한 메모리 문제를 어떻게 해결해야 할까?

결론부터 말하자면, 아쉽게도 답이 없다.

✅ 해결책

C는 필연적으로 이러한 오류를 발생시킬수 밖에 없는 구조이다.

예리한 칼을 개발자에게 쥐어졌으니, 개발자가 조심해 하면서 사용하는 수밖에 없다.

애시당초 칼을 쥐어주지 않으면 되는거 아닌가요?

이는 C의 철학에 위배된다.

🔹 #1: C 개발자라면 개발자가 알아서 잘 해주는 것 이외 방법이 없다.

가급적 스택에서 만들어

Heap에다 만들면 개발자가 알아서 잘 delete 하는 수밖에 없다.

🔹 #2: C++은 몇가지 솔류션이 있다. 레퍼런스, 스마트포인터

C++은 C의 위와 같은 문제에 대한 솔류션으로 아래와 같은 솔류션을 제공한다.