C | 关于VS编译器的scanf、字符操作函数报错不安全

简介: 许多使用VS编译器的铁汁都会遇到这类报错,使用`scanf`、`strcat`、`strerror`等,都会报错认为它们不安全,让我们看看如何处理叭~

在这里插入图片描述
啊我摔倒了..有没有人扶我起来学习....


@TOC


前言

许多使用VS编译器的铁汁都会遇到这类报错,使用scanfstrcatstrerror等,都会报错认为它们不安全,让我们看看如何处理叭~


一、报错描述

  • 这边拿scanf举例子
    int n;
    scanf("%d",&n);

在这里插入图片描述

二、解决方案

1. 用scanf_s代替scanf

  • 提示scanf不安全,可以选择用scanf_s。确实可以解决问题,但是博主这边不建议使用scanf_s,因为这个函数只有VS编译器认识,没有良好的可移植性

2. 使用_CRT_SECURE_NO_WARNINGS

  • 一定要记住,必须将这段代码放在整个源文件的==首行==
#define _CRT_SECURE_NO_WARNINGS 1

三、一劳永逸

  • 本来该问题已经算解决了,但是博主心疼铁汁们的手,每次创建源文件都要输入一次#define _CRT_SECURE_NO_WARNINGS 1岂不是太麻烦啦,于是博主来教教大家如何一劳永逸~
  1. 咱们需要找到VS的一个文件(newc++file.cpp
  2. 这边博主推荐下载一个小东西(Everything——本地电脑的搜索软件)

在这里插入图片描述

  1. Everything快速搜索出newc++file.cpp的所在

在这里插入图片描述

  1. 用记事本打开newc++file.cpp,把

#define _CRT_SECURE_NO_WARNINGS 1拷贝进去保存
在这里插入图片描述

  1. 以后每次创建新的源文件,首行就会自动存在

#define _CRT_SECURE_NO_WARNINGS 1
在这里插入图片描述

关于第4点,可能有些铁汁会遇到没有权限打开 newc++file.cpp的问题,这时咱就把 newc++file.cpp==复制粘贴==到桌面上打开修改,修改完再拖进原文件位置进行替换,记住,一定是复制粘贴出来,不要拖出来,拖出来原路径就没有该文件了

在这里插入图片描述
在这里插入图片描述


在这里插入图片描述

相关文章
|
6月前
|
C语言
14.C语言:用scanf函数输出数据
14.C语言:用scanf函数输出数据
178 0
|
6月前
13.C语言:用printf函数输出数据
13.C语言:用printf函数输出数据
100 0
|
6月前
|
存储 安全 编译器
C语言的scanf输入函数的介绍分享
C语言的scanf输入函数的介绍分享
|
5月前
|
C语言 C++
C语言printf()函数详解
C语言printf()函数详解
|
6月前
|
C语言
深入理解C语言中的printf函数及数据输出
深入理解C语言中的printf函数及数据输出
406 0
|
6月前
|
存储 C语言
C语言用printf函数输出数据
C语言用printf函数输出数据
62 0
|
6月前
|
C语言
C语言中printf函数输出数据
C语言中printf函数输出数据
65 0
|
6月前
|
C语言
C语言字符串、宏定义及主函数介绍
C语言字符串、宏定义及主函数介绍
137 0
|
存储 C语言
C语言/gets()函数和scanf()函数关于字符串的输入
C语言/gets()函数和scanf()函数关于字符串的输入
|
C语言 数据安全/隐私保护
【C语言】getchar与scanf输入函数注意事项
【C语言】getchar与scanf输入函数注意事项
91 0