解决VS中scanf()函数报错问题的四种方案(详细)

这篇具有很好参考价值的文章主要介绍了解决VS中scanf()函数报错问题的四种方案(详细)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

scanf报错,数据结构,算法,c++,visualstudio

 scanf函数在VS中报错的主要原因是 scanf被认为不安全而被编译器默认设置为禁用。

那么如何解决这个问题呢

法一:

仅将函数scanf替换为scanf_s即可,其他语法不变。但scanf_s函数并不是C语言函数库里的标准函数,而是VS编译器所提供的函数,所以并不推荐用这种方法来解决问题。

法二:

在代码的最顶端输入#define  _CRT_SECURE_NO_WARNINGS

!!!注意一定是最顶端不然依旧会报错

错误示例:

 scanf报错,数据结构,算法,c++,visualstudioscanf报错,数据结构,算法,c++,visualstudio

 正确示例:

scanf报错,数据结构,算法,c++,visualstudio

scanf报错,数据结构,算法,c++,visualstudio

这样就解决了,但是这个办法依然有缺陷,就是当我们每一次新建一个程序或者项目时,就要重新去在代码的最顶端输入#define  _CRT_SECURE_NO_WARNINGS。这显然还不是我们想要的解决方案。

法三:

在VS的界面中,最顶端找到项目这一栏,点击属性

 scanf报错,数据结构,算法,c++,visualstudio

找到C/C++这一栏,选择预处理器,打开预处理器定义这一栏最右边的小三角,选择编辑。

scanf报错,数据结构,算法,c++,visualstudio

 在最上方的白框中输入_CRT_SECURE_NO_WARNINGS,点击确定,然后点击应用(切记是应用而非确定)但这种办法依旧不能一劳永逸(恼)。

scanf报错,数据结构,算法,c++,visualstudio

法四:

打开文件资源管理器,找到visual studio 的安装路径,然后在该路径下搜索 “newc++file.cpp” (或可直接搜索,路径越细查找速度越快)

scanf报错,数据结构,算法,c++,visualstudio

 找到这个文件后复制粘贴到桌面上scanf报错,数据结构,算法,c++,visualstudio

 输入#define  _CRT_SECURE_NO_WARNINGS,后保存退出

scanf报错,数据结构,算法,c++,visualstudio

 将文件拖回原来的位置,点击替换目标中的文件,之后点击确认就好(如果直接在原位置更改保存的话会要管理员权限导致无法保存)

此后我们在VS中创建新的源C/CPP文件时会在开头自动输入

#define   _CRT_SECURE_NO_WARNINGS,一劳永逸解决问题。文章来源地址https://www.toymoban.com/news/detail-784372.html

到了这里,关于解决VS中scanf()函数报错问题的四种方案(详细)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Selenium登录网页时,不定时出现异常弹窗的四种解决方案

    以下是一个简单的伪代码示例,展示了如何加入异常判断并重新登录: 在上述示例中,使用了 login() 函数进行登录操作,并根据返回值判断登录是否成功。然后,使用 check_usbkey_matching() 函数检查当前用户与USBKEY是否匹配,并根据返回值判断是否需要重新登录。 如果检测到当

    2024年04月25日
    浏览(37)
  • 解决Error: error:0308010C:digital envelope routines::unsupported的四种解决方案

    问题描述:         报错: Error: error:0308010C:digital envelope routines::unsupported 报错原因:         主要是因为 nodeJs V17 版本发布了 OpenSSL3.0 对算法和秘钥大小增加了更为严格的限制,nodeJs v17 之前版本没影响,但 V17 和之后版本会出现这个错误。 我的node版本是v18+ 报错详细信息

    2024年02月05日
    浏览(49)
  • Node:解决Error: error:0308010C:digital envelope routines::unsupported的四种解决方案

            主要是因为 nodeJs V17 版本发布了 OpenSSL3.0 对算法和秘钥大小增加了更为严格的限制,nodeJs v17 之前版本没影响,但 V17 和之后版本会出现这个错误。 我的node版本是v18+ 报错详细信息:    方案1:打开IDEA 终端,直接输入 Linux Mac OS: Windows: 方案2:打开IDEA 终端,直

    2024年04月13日
    浏览(46)
  • cv::Mat的四种复制操作和cv::Mat作为函数形参的四种形式

    1、通过讲解cv::Mat类的深拷贝和浅拷贝来说明cv::Mat的四种复制操作 2、当cv::Mat作为函数形参时: cv::Mat temp 、 const cv::Mat temp 、 cv::Mat temp 、 const cv::Mat temp 这四种形参有什么区别?函数内部对Mat类形参数据的改变是否会影响到外面的Mat类实参数据? OpenCV2,数据结构Mat主要包含

    2024年02月10日
    浏览(62)
  • STM32延时函数的四种方法

    STM32延时函数的四种方法 单片机编程过程中经常用到延时函数,最常用的莫过于微秒级延时delay_us()和毫秒级delay_ms()。本文基于STM32F207介绍4种不同方式实现的延时函数。 \\\\插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我私信,最近比较

    2023年04月26日
    浏览(44)
  • 常见的四种排名函数的用法(sql)

    四个排名函数: 1.row_number 2.rank 3.dense_rank 4.ntile 1. ROW_NUMBER(排名场景推荐) 1.1 介绍 在 SQL 中,ROW_NUMBER() 是一个窗口函数,它为结果集中的每一行分配一个唯一的序号。该函数的语法如下: 其中,ORDER BY 子句指定了 ROW_NUMBER() 函数排列行的顺序。如果省略 ORDER BY,则序号将按

    2024年02月01日
    浏览(37)
  • Java 项目防止 SQL 注入的四种方案

    SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据

    2024年02月09日
    浏览(57)
  • C语言实例,输出Hello,World的四种函数。

    在C语言中,输出“Hello, World”是学习的第一个例子。它可以帮助程序员了解如何在屏幕上打印文本。下面是几种输出“Hello, World”的方式: 使用printf()函数可以将指定的文本输出到标准输出流stdout。下面是使用printf()函数输出“Hello, World”的例子: 在这个例子中,我们包含了

    2024年02月09日
    浏览(46)
  • MySQL与ES数据同步的四种方案及实践演示

    也就是同步调用,这是一种最为简单的方式,在将数据写到mysql时,同时将数据写到ES。 1.业务逻辑简单 2实时性高 1.硬编码,有需要写入mysql的地方都需要添加写入ES的代码 2.业务强耦合 3.存在双写失败丢数据风险 4.性能较差:本来mysql的性能不是很高,再加一个ES,系统的性

    2024年02月09日
    浏览(43)
  • 【五一创作】VS+Qt主界面内嵌自定义控件的四种方法以及不同自定义控件数据交互

    在Qt界面开发过程中,一个主界面或者主窗口看成是各个控件排列组合后的集合,对于一些项目而言,有些常用的控件可以封装成自己想要的控件样式并且复用,比如说,log显示控件,图像/视频显示控件等,可以将常用的控件代码封装起来,以便下次复用,内嵌在不同的主界

    2024年02月11日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包