scanf() 함수를 사용하면 C4996 오류가 발생하곤 합니다.


원인

 원래는 문제없이 컴파되는 것이 맞지만, scanf() 등의 함수에서 발생 가능한 잠재적 문제점으로 인해 MSVC에 이 함수들을 사용하지 못하도록 강제하는 설정(SDL, Security Development Lifecycle)이 활성화되어 사용하지 못하는 것입니다.


처리방법

1. 프로젝트 설정 변경

 1) Visual Studio 2019 상단 메뉴의 프로젝트 - 속성(P)을 눌러 속성 창을 엽니다.

 2) 왼쪽의 C/C++ - 일반 메뉴에서 SDL 검사 항목을 아니요(/sdl-)로 바꿔줍니다.

 

 

 2) 전처리 코드 작성

#pragma warning(disable:4996)
#define _CRT_SECURE_NO_WARNINGS

 둘중 하나만 작성해서 사용하면 됩니다.

'C' 카테고리의 다른 글

VS ERROR C6031 : 반환 값이 무시되었습니다. 'function'.  (0) 2020.12.17

+ Recent posts