为什么这个程序在vs2017可以运行,在vc++不行,有老哥能帮忙看看吗?

如图... 如图 展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
子非退而结网
2018-12-06 · TA获得超过407个赞
知道小有建树答主
回答量:335
采纳率:68%
帮助的人:230万
展开全部
在VC++6.0中不能运行是由函数scanf_s导致的,原因是:
scanf_s是由微软提供的scanf的安全版本,vc++2005以后的版本才支持,在VC++6.0包
含的库中没有此函数,所以用VC++6.0编译时会报错:

想要用VC++6.0运行,将scanf_s函数修改为scanf就可以了

补充知识:
ANSI C中没有scanf_s(),只有scanf(),scanf()在读取时不检查边界,所以可能会造成内存
访问越界, 为了让原版函数更安全,微软提供了很多带"_s"后缀的安全版本函数,scanf_s
就是scanf的安全版本,从VC++2005开始提供支持。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
名片
2024-10-28 广告
Altair HyperWorks是一款卓越的工程仿真与优化软件,集成了多个强大模块,专为复杂工程问题提供全面的解决方案。它以其独特的功能和优势,在提升产品设计效率、降低成本及加快上市速度方面表现出色。在优菁科技(上海)有限公司,我们为各行... 点击进入详情页
本回答由名片提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式