C4996 오류 scanf: This function or variable may be unsafe. Consider using scanf_s instead.
To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
Visual Studio 에서 scanf()를 사용하면 저런 에러가 뜬다.
번역기를 돌려보면
이 함수 또는 변수는 안전하지 않을 수 있습니다. 대신 scanf_s를 사용하는 것이 좋습니다. 지원 중단을 비활성화하려면 _CRT_SECURE_NO_WARNNINGS를 사용하세요. 자세한 내용은 온라인 도움말을 참조하십시오.
이렇게 뜬다. scanf_s를 쓰던지 _CRT_SECURE_NO_WARNINGS 를 사용해서 비활성화하라고 한다.
우선 첫 번째 해결법 scanf_s를 사용한다.
이렇게 scanf_s("%d", &num, sizeof(4));
이런식으로 사용해줘야 한다. 좀 번거롭다. 그래서 두번째 방법으로 해본다.
_CRT_SECURE_NO_WARNINGS
프로젝트 우클릭 => 속성 => C/C++ => 전처리기
=> 전처리기 정의의 우측에 입력란 끝부분에 _CRT_SECURE_NO_WARNINGS;를 입력한다.
세미콜론까지 찍어준다. => 확인
이렇게 하면 그냥 scaf()로도 에러가 생기지 않는다.
그리고 세 번째 방법으로는 SDL 검사를 하지 않는 것이다.
마찬가지로 Project 우클릭 => 속성 => C/C++ => 일반 => SDL 검사 => 아니요(/sdl-) => 확인
이렇게 해도 오류가 발생하진 않는다.
그리고 이 밖에도 코드 상단에 마찬가지로 선언해 주는 방법이 있는데 이 방법 중에서 고르는게 편한 것 같다.
'프로그래밍 > c언어 기초공부' 카테고리의 다른 글
[C언어 기초-06] 관계(비교) 연산자 (0) | 2021.08.18 |
---|---|
[C언어 기초-05] 연산자 (대입, 산술, 증감연산자) (0) | 2021.08.03 |
[C언어 기초-04] 데이터 입출력 2. scanf() (0) | 2021.07.27 |
[C언어 기초-03] 데이터 입출력 1. printf() (0) | 2021.04.29 |
[C언어 기초-02] 데이터 편 변수와 자료형 (0) | 2020.11.05 |
댓글