Programming/C

C언어 - 주소를 반환하는 함수

경원구 2016. 5. 23. 10:00

Call by Reference에서 함수에서 주소를 넘겨받아 작업하는 프로그래밍을 하였다

이번에는 함수에서 return 값으로 값이아닌 주소를 반환하는 함수를 만들어보자.

주의할 사항이있다.

주소를 넘겨줄때 지역 변수의 주소를 반환하면 경고가 발생한다. 왜그럴까지역변수는 함수가 종료되면서 동시에 소멸되기 때문이다.

 


<실습>


 

-결과-

지역변수 또는 임시 변수의 주소를 반환하고 있습니다. 라고 경고메시지가 뜬다.

그런데 결과는 잘 출력되고 있다.

 

 

 

하지만, 대단위 프로젝트에서는 치명적인 문제가 될 수 있다. 이런 경고를 없애려면 어떻게해야할까?

바로 정적 변수를 사용하는 것이다.

정적변수... 어느 특정 공간에서 지역변수를 전역변수처럼 사용하고 싶을때 쓰는 변수이다!

 

<실습>

 


 

-결과-