一、解决方案

在VC环境下运行,用的是scanf,而我用的是VS2012,输入函数用的是scanf_s。有如下报错:

解决方法:

二、补充说明

ANSI C中没有scanf_s(),只有scanf(),scanf()在读取时不检查边界,所以可能会造成内存访问越界,例如分配了5字节的空间但是读入了10字节
  1. char buf[5]={'\0'};
  2. scanf("%s", buf);
    如果输入1234567890,后面的部分会被写到别的空间上去。
    以上代码如果用scanf_s,第二行应改为scanf_s("%s",buf,5),表示最多读取4个字符,因为buf[4]要放'\0'
  3. scanf_s最后一个参数是缓冲区的大小,表示最多读取n-1个字符.
vc++2005/2008中提供了scanf_s(),在最新的VS2015中也提供了scanf_s()。在调用时,必须提供一个数字以表明最多读取多少位字符。很多带“_s”后缀的函数是为了让原版函数更安全,传入一个和参数有关的大小值,避免引用到不存在的元素,有时hacker可以利用原版的不安全性黑掉系统。比如:char d[20];写成scanf_s("%s",d,20);才是正确的,有这个参数20使准确性提高。
 scanf_s() 与scanf() 的功能基本相同,前者更安全一些,因为 scanf_s() 是针对“ scanf()在读取字符串时不检查边界,可能会造成内存泄露”这个问题而设计的。 scanf_s()读取字符串时,必须提供一个数字以表明最多读取多少位字符,以防止溢出。

VS2013 scanf_s引起 msvcr110d.dll xxxxxx处有未经处理的异常相关推荐

  1. VS2012 msvcr110d.dll xxxxxx处有未经处理的异常:0xC0000005:写入位置xxxxxx时发生访问冲突(scanf_s引起)-已解决

    源代码见<C程序设计>P307 Example9.7 功能为输入三名学生的学号.姓名.三科成绩,输出成绩最高的学生信息和其平均成绩. 源代码如下: #include<stdio.h& ...

  2. 0x0FF0ED76 (ucrtbased.dll) (Project5.exe 中)处有未经处理的异常: 将一个无效参数传递给了将无效参数视为严重错误的函数。 出现了

    void drop(int a)//一个删除deque容器中元素的函数{deque<int>::iterator it;it = kn.begin();kn.erase(it+a);cou ...

  3. VScommunity2019 0x00007FFCCA14B7EC (ucrtbased.dll) (Project1.exe 中)处有未经处理的异常: 将一个无效参数传递给了将无效参数视为严重错误

    0x00007FFCCA14B7EC (ucrtbased.dll) (Project1.exe 中)处有未经处理的异常: 将一个无效参数传递给了将无效参数视为严重错误的函数. 读某一个文件,但是并没 ...

  4. 0x0F1AFD76 (libcocos2d.dll) (Plane.exe 中)处有未经处理的异常: 0xC0000005: 读取位置 0x00000018 时发生访问冲突。

    0x0F1AFD76 (libcocos2d.dll) (Plane.exe 中)处有未经处理的异常: 0xC0000005: 读取位置 0x00000018 时发生访问冲突. Get data fr ...

  5. (转载)0x0F1AFD76 (libcocos2d.dll) (Plane.exe 中)处有未经处理的异常: 0xC0000005: 读取位置 0x00000018 时发生访问冲突。

    原文地址:http://blog.csdn.net/u010398774/article/details/23567441 0x0F1AFD76 (libcocos2d.dll) (Plane.exe ...

  6. 0x00007FFE9071C408 (ucrtbase.dll) (xxx.exe 中)处有未经处理的异常: 将一个无效参数传递给了将无效参数视为严重错误的函数。

    1.调试VS程序,弹出异常:0x00007FFE9071C408 (ucrtbase.dll) (xxx.exe 中)处有未经处理的异常: 将一个无效参数传递给了将无效参数视为严重错误的函数. 2.在 ...

  7. 0x00007FFE81272FE1 (ucrtbased.dll) (Project1.exe 中)处有未经处理的异常: 0xC0000005: 读取位置 0x0000000000000000 时发

    0x00007FFE81272FE1 (ucrtbased.dll) (Project1.exe 中)处有未经处理的异常: 0xC0000005: 读取位置 0x0000000000000000 时发 ...

  8. 0x0EA772D7 (msvcr80.dll) 处有未经处理的异常: 0xC000041D: 用户回调期间遇到未经处理的异常。。

    当我的应用程序加装的数据占用的内存达到900M以上,会发生一个奇怪问题,使用ADO open接口 报异常 0x0EA772D7 (msvcr80.dll) 处有未经处理的异常: 0xC000041D: ...

  9. 0x77edd7fc (mfc100d.dll) 处有未经处理的异常: 0xC0000005: 读取位置 0xcdcdcdd1 时发生访问冲突

    multi_thread_example.exe 中的 0x77edd7fc (mfc100d.dll) 处有未经处理的异常: 0xC0000005: 读取位置 0xcdcdcdd1 时发生访问冲突( ...

最新文章

  1. XEvent--Demo--使用XEvent来捕获在数据库DB1上发生的锁请求和锁释放
  2. hibernate下载
  3. (五)深度学习和ResNet50的COVID-19诊断结果
  4. 宁波大学2020计算机技术复试线,宁波大学2020年硕士研究生复试分数线
  5. 【Java程序设计】流程控制
  6. 单例模式简单示例与优化
  7. 时间排序处理在微信小程序和真机调试没问题,发布体验版后未执行
  8. 生成HTML测试报告
  9. 项目日报模板_知名房企的精细化施工管理,从项目日常到施工图,全方位涵盖...
  10. 图像和视频语义分割的深度学习技术综述
  11. 泊松分布–计算概率分布的公式
  12. 库存流水账计算结余数量
  13. 怎么才能写好技术文档?这是我的全部经验
  14. 采用jacob实现word转pdf
  15. Python读取两个txt文件内容,重新写到新的txt文件
  16. 网络笔记--交换机和路由器
  17. java最小因子_一个整数的所有最小因子
  18. 小米iot业务_一文看懂小米2019上半年财报:IoT平台连接设备达1.96亿台
  19. VUE项目中安装和使用vant组件
  20. 电脑连接蓝牙耳机声音总是断断续续:

热门文章

  1. Linux教程——常见Linux发行版本有哪些?
  2. jstl mysql 更新_jstl sql:update标签
  3. Python小海龟turtle画汉字
  4. Unity全新UI系统dear imgui
  5. Ruby学习之文件的写入和读取
  6. 怎么用服务器增强信号,让手机信号增强的六大秒招
  7. Is Design Dead?
  8. R语言这代码什么意思 set.seed(123) train_ind - sample(1:nrow(data), 0.8*nrow(data))
  9. C# NPOI 替换Excel模板、插入数据、替换指定内容
  10. Windows Wce认证过程MS11-080提权使用