禁止显示状态 警告 C6031 返回值被忽略: "scanf".

发布网友 发布时间:2022-04-20 07:18

我来回答

5个回答

懂视网 时间:2022-11-18 18:32

1、使用scanf函数时,会报错“返回值被忽略”,是因为微软认为scanf不安全导致的。

2、将使用的scanf函数替换为scanfs,好像scanf_s只有微软的编译器支持。

3、在文件的最开始添加下面一行,忽略安全检测,不然使用scanf会报错。

热心网友 时间:2023-09-08 06:12

禁止显示状态,警告C6031,是代码错误造成的,解决方法如下:

1、首先格式控制字符串用于指定输入数据的格式,一般由格式字符串组成。

2、格式字符串以%开头,在%后是各种格式的格式符,用来说明输入数据的类型、形式、长度、小数位数。

3、地址列表中给出各变量的地址,用来输入变量值。

4、格式字符串以%开头,在%后是各种格式的格式符,用来说明输入数据的类型、形式、长度、小数位数。

5、最后程序中的&n,表示变量n的地址。

热心网友 时间:2023-09-08 06:12

不明白你要问啥。

实际情况下输入类型不匹配是一个特别严重的错误,所以建议你这么写

热心网友 时间:2023-09-08 06:13

热心网友 时间:2023-09-08 06:13

我来说说我的观点吧:
scanf这个函数,本身就有返回值的,如果没有变量去接收返回的值,就会有这个警告的,因为函数有return返回的值,如:
int a;
scanf("%d", &a);
光这样写的话,它就会提示返回值被忽略了,但如果这样写:
int a, b;
b = scanf("%d", &a);
它就不会提示了,或者直接将 #pragma warning(disable:6031) 放到当前文件的顶部就行了,就像#include那样,括号里的数字填警告的数字就行了,以后遇到其他只在vs遇到的警告,直接照搬就行了(但那种直接提示“错误”error 的就别这样,只适用这种警告warning)
(#pragma是预处理命令的一种)

热心网友 时间:2023-09-08 06:14

把scanf换为scanf_s

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
10.034707s