Programming/ERROR
-
error C4996Programming/ERROR 2015. 1. 27. 14:22
error C4996 Visual C++ 2005 버전부터 오래된 CRT 함수들이 더 안전하고 최신 버전인 _s("secure")가 붙어서 만들어졌다. 여기서 CRT함수들은 단지 그 함수의 사용을 추천하지 않는다는 뜻이지, CRT에서 그 함수가 제거될 예정이라는 뜻은 아니다. 더 안전한 함수들은 보안 오류들을 방지하거나 해결하지 않고, 단지 오류가 발생하면 그것을 catch하는 역할만 한다. 예를 들어, strcpy 함수는 만일 복사되는 문자열이 대상 버퍼에 비해 클 경우, 알리는 방법이 없다. 하지만 이 함수에 대응되는 strcpy_s 는 매개변수로써 버퍼의 크기를 받고, 버퍼 오버런이 나타날때 결정할 수 있다. 만일 문자 10개의 버퍼로 11개의 문자가 복사되는 경우, strcpy_s 를 사용하면 오..