0


VS中出现的printf,scanf等函数不安全而报错的问题的全面解决方法

在我们对VS的刚开始使用时,经常会遇见函数不安全而报错的问题,如

有如下三种解决办法(个人推荐第三种):

1.文件包含 #define _CRT_SECURE_NO_WARNINGS
这里又分为两种情况:

(1)在 .c 文件中
有些项目比较简单,可能一个.c文件就能完成代码,这个时候把#define _CRT_SECURE_NO_WARNINGS 放在当前.c文件的第一行就可以了(注意:一定要是第一行)。

#define _CRT_SECURE_NO_WARNINGS 
#include <stdio.h>
int main() {
    int a;
    scanf("%d", &a);
    printf("%d\n", a);
    return 0;
}

(2)一劳永逸的方法:

在自定义 .h 文件中在项目有自定义头文件时,也可以把 #define _CRT_SECURE_NO_WARNINGS 放在自定义的头文件中,当头文件有 #pragma once 时(防止头文件重复包含),上面的代码也可以放在其之后如

2.预处理器定义

项目->属性->C\C++->预处理器->预处理器定义,在右输入框中加入:

_CRT_SECURE_NO_WARNINGS并保存。

3.关闭SDL检查

项目->属性->C\C++->常规->SDL检查,选择否

我觉得第三种最好最方便,但美中不足的地方就是只适用于当前项目,新项目要重新设置。

总结:除了1.(2)的设置是适用于所有项目外,其他设置只是用于本次项目。

本人推荐第三种和第一种的第二个方法。

新手的一点学习分享,如有错误的地方还请各位指正。


本文转载自: https://blog.csdn.net/m0_74444368/article/details/129952129
版权归原作者 一起去看雪6 所有, 如有侵权,请联系我们删除。

“VS中出现的printf,scanf等函数不安全而报错的问题的全面解决方法”的评论:

还没有评论