首页 > 分享 > 关于Visual Studio编程时出现 “0xFEFEFEFE 处有未经处理的异常(在 查找学生信息.exe 中): 0xC00001A5: 检测到无效的异常处理程序例程。“解决方案

关于Visual Studio编程时出现 “0xFEFEFEFE 处有未经处理的异常(在 查找学生信息.exe 中): 0xC00001A5: 检测到无效的异常处理程序例程。“解决方案

最新推荐文章于 2023-03-22 20:57:05 发布

坚持坚持再坚持w 于 2020-02-28 11:57:29 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

异常说明: 今天在编程时遇到一个小错误就是用scanf_s输入字符串时程序出现异常0xFEFEFEFE 处有未经处理的异常(在 查找学生信息.exe 中):  0xC00001A5: 检测到无效的异常处理程序例程。 (参数:  0x00000003)。如下图所示:

                           

解决方法:

     首先了解scanf_s() 和scanf()的区别。教材里用的scanf(),其实在目前Visual Studio版本中已经弃用了,用scanf_s()函数代替了.
scanf() 函数是格式化输入函数,它从标准输入设备(键盘) 读取输入的信息。其调用格式为:scanf("<格式化字符串>",<地址表>)。
scanf_s() 的功能虽然与scanf() 相同,但却比 scanf() 安全,因为 scanf_s() 是针对“ scanf()在读取字符串时不检查边界,可能会造成内存泄露”这个问题设计的。scanf_s()用于读取字符串时,必须提供一个数字以表明最多读取多少位字符,以防止溢出。

     下面用一个简单案例说明:

      (1)出现异常的程序如图:

               

       (2)消除异常的两种方法

               ①在程序开始时加入一句宏定义:#define _CRT_SECURE_NO_WARNINGS 。  然后将scanf_s改为scanf且printf_s                 改为printf。如下图所示,

                                                 

                ②在scanf_s中给字符串变量后加上原有长度。例如本例中将scanf_s("%s",name)改为scanf_s("%s",name,10) 。程序               如下图所示,

                                            

       Tips:scanf函数或scanf_s函数中输入项如果受字符数组名,不再加地址符&,因为在c语言中数组名代表该数组的起始地址。

相关知识

JAVA编程艺术
工作碰上的技术问题及处理经验
程序员修炼之道
元编程艺术,第 1 部分: 元编程简介
东西方的终极对决 正式打响
访问异常页面
基于Java的花卉销售系统的设计与实现/管理系统/鲜花网站
SKYNE/python
ClassNotFoundException解决方案总结
生鲜配送平台解决方案10篇

网址: 关于Visual Studio编程时出现 “0xFEFEFEFE 处有未经处理的异常(在 查找学生信息.exe 中): 0xC00001A5: 检测到无效的异常处理程序例程。“解决方案 https://m.huajiangbk.com/newsview104944.html

所属分类:花卉
上一篇: 你好,2025届新同学!
下一篇: 木槿花荼