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 |
---|