warning C4996: '..'이(가) deprecated로 선언되었습니다.

Visual Studio 2005 이상을 써본 사람이라면 다음과 같은 오류는 한번쯤 겪어 봤을 것이다. warning이기 때문에 무시하는 사람들도 있을 것이다. 해당 경고는 프로그램의 알고리즘 적으로 별다른 영향을 주지 않기 때문이다. 
 
해당 경고의 부가설명을 확인해 보면 즉, 함수가 안전하지 못하다는 얘기이다. C 언어 초기에 지원하는 라이브러리 함수는 후에 버퍼오버플로우와 같은 공격에 취약함이 발견되면서 이를 쓰지 못하게 하는 것이다. 그래서 관련된 경고를 찾아보면 msdn 사이트를 통해 대신 사용할 함수들을 명시하고 있다. CRT 함수는 C Run Time 함수를 의미한다. 


물론 해당 사이트에서 언급하는 안전한 함수들도 바꾸면 좋겠지만 이미 구현된 프로그램을 2005 이상으로 변환시켰을 경우에는 그 작업이 만만치 않다. 그리고 새롭게 프로젝트를 생성해 구현해 가더라도 귀찮은 일이다. 왜냐하면 너무나 이전 함수들에 익숙해져 왔기 때문이다. 

하지만 언어뿐만 아니라 컴퓨터 관련 분야의 흐름은 너무도 빠르게 변한다. 이러한 흐름에 적절히 대처하지 못한다면 결국 뒤떨어지게 되는 것이다. 따라서 조금 귀찮더라도 컴파일할때마다 그때 그때 안전한 함수로 바꿔주자. 
조금만 노력하면 익숙해질 것을...







저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Proneer

댓글을 달아 주세요


티스토리 툴바