이번 글에서는 C언어 공부를 위한 프로젝트 탬플릿 설정을 어떻게 해야하는지 정리해본다.

C언어를 배우면서 scanf같은 함수를 사용할 때에 에러가 나는데 만약 다음과 같이

To disable deprecation, use _CRT_SECURE_NO_WARNINGS.

라는 오류 메세지가 나온다면 다음과 같은 방법으로 해결할 수 있다.

첫번째 방법은 코드 윗단에 다음과 같은 코드를 삽입하는 것이다.

#define _CRT_SECURE_NO_WARNINGS

두번째 방법은 define이 되어 있는 프로젝트 템플릿을 만들어 사용하는 것이다.

이러한 방법은 매번 define을 사용하지 않아도 되는 장점이 있다.

  1. 우선 프로젝트를 만든 다음 [솔루션 탐색기] 항목에서 [소스 파일]에 [추가]-[새 항목]을 선택한 뒤 [Visual C++]-[C++ 파일]을 선택하고 [이름]에 filename.c를 입력하고 [추가] 버튼을 클릭한다.

  2. [솔루션 탐색기] 항목에서 [소스 파일]에 추가된 filename.c를 마우스 오른쪽 버튼으로 클릭하고 [속성]을 선택한다.
  3. [구성 속성]-[C/C++]-[전처리기]를 선택한 다음 [전처리기 정의]를 클릭하면 우측에 아래 방향 화살표가 나온다. 이 화살표를 눌러 나오는 <편집>을 클릭한다.
  4. <편집>을 누르면 나오는 [전처리기 정의] 칸에 _CRT_SECURE_NO_WARNINGS를 입력한 다음 [확인]버튼을 클릭하고 [적용]-[확인] 버튼을 누른다.
  5. 상단 메뉴의 [프로젝트]-[템플릿 내보내기]를 클릭하고 새창이 뜨면 [예]를 클릭하고 [프로젝트 탬플릿]을 선택한 후 [다음]을 클릭한다.
  6. [템플릿 옵션 선택]창에서 [템플릿 이름]을 자신이 원하는 이름으로 지정하고, 하단에 [템플릿을 자동으로 Visual Studio로 가져오기]와 [출력 파일 폴더에 탐색기 창 표시]를 체크한 뒤에 [마침]을 클릭한다.
  7. 이후에 새 프로젝트를 시작할 때 [새 프로젝트 만들기]에서 추가한 템플릿을 선택한 뒤 프로젝트를 만들면 된다.

이와 같은 과정을 거치면 scanf, gets, strcpy 등 메모리 침범 문제를 일으키는 함수를 사용할 때에 에러가 뜨며 종료되지 않도록 막아준다.

Tags:

Updated: