홈
토픽
스파링
잉크
미션
전문가 신청
베리몰
나도 질문하기
생활
클래식한콰가284
이거 #define _CRT_SECURE_NO_WARNINGS를 vs에서 scanf를 쓰기위해 썼는데도 오류가 나는데 어떻게 해야하죠
해결책 부탁 드립니다....! 상세히 설명 부탁드려요
5개의 답변이 있어요!
보랏빛수염고래51
코드를 두번째 라인에서 적용하셨는데,
이전으로 해보세요.
scanf함수를 사용할때 define적용이 안되서 생기는 에러입니다.
응원하기
고독한지빠귀124
안녕하세요!
문의주신 내용은 보안으로 인해 scanf의 사용을 막고있는 부분 때문에 발생 한 오류입니다.
_CRT_SECURE_NOWARNINGS를 define 해주었는데도 오류나는 이유는 정확히 모르겠지만 해결 방법으로는 scanf 대신 권장에 따라 scanf_s를 사용하시거나 나머지 방법은 프로젝트 설정을 변경해주시는 건데 아래 블로그 주소를 참고해주세요.
https://bymakers.tistory.com/6
감사합니다.
pay2id.com
이거 #define CRTSECURENOWARNINGS를 vs에서 scanf를 쓰기위해 썼는데도 오류가 나는데 어떻게 해야하죠
====> scanf 를 scanf_s 로 수정한뒤에 다시 빌드해보시기 바랍니다........
1
근사한파카16
안녕하세요~!
에러의 내용을 잘 읽어보시길 바랍니다.
문제속에 해답이 있네요 ^^
scanf 함수 대신에 scanf_s 함수로 변경하시면 됩니다
"instead scanf_s" 사용을 권하네요. 이유는 scanf 함수가 "unsafe" 안전하지 않다는 뜻
과거에 c언어 배울때 scanf는 기본으로 사용했는데
특정 버젼이나 환경에서 안전하지 않은 함수로 동작하는거 같습니다.
즐거운다향제비
#define _CRT_SECURE_NO_WARNINGS를 쓰시려면 소스코드 최상단에 이렇게 쓰셔야 작동하는 것으로 알고 있습니다.
#ifdef _MSC_VER
#define _CRT_SECURE_NO_WARNINGS
#endif
이러한 방식으로 써보시구요.
또는 #pragma warning(disable: 4996)를 소스 코드 최상단에 작성하시고 코딩을 하는 방법이 있는 것으로 압니다.