#include <stdio.h>
void main(){
	int int_data;
	float float_data;

	scanf("%d", &int_data);
	scanf("%f", &float_data);

	printf("input : %d, %f\n", int_data, float_data);
}

위와 같이 사용할 때 C6031 오류가 납니다.


원인

 함수 scanf의 반환값을 어딘가에 대입하거나 사용하지 않아서 발생하는 경고입니다. 코드상 문제도 없으며, 단순히 버려지는 값이 있음을 알리기 위해 인텔리센스가 안내하는 내용입니다. 만일 원하는 작업대로 정상 동작 한다면 무시하셔도 됩니다.


처리 방법

 

1. 프로젝트 속성 수정

 1) Visual Studio 2019 상단 [프로젝트 - 속성] 을 눌러 속성 창을 엽니다.

 

 2) 왼쪽 탭에서 [ C/C++ - 고급] 메뉴를 엽니다. 이 때, [C/C++]메뉴는 *.c 혹은 *.cpp 파일이 하나 이상 프로젝트에 포함되어있어야합니다.

 

 3)  [특정 경고 사용 안 함] 메뉴에 가리고자 하는 경고 번호를 입력하세요. 여기선 6031을 입력해주시면 됩니다. 

 

2. 반환 값을 변수에 담기

#include <stdio.h>
void main(){
	int int_data;
	float float_data;

	int tmp = scanf("%d", &int_data);
	int tmp1 = scanf("%f", &float_data);

	printf("input : %d, %f\n", int_data, float_data);
}

 

'C' 카테고리의 다른 글

VS ERROR C4996 : This function or variable may be unsafe  (0) 2020.12.17

+ Recent posts