| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2583 人关注过本帖
标题:scanf_s输入为啥总是异常中断?来自第三世界的呼唤
只看楼主 加入收藏
拼尽全力
Rank: 1
等 级:新手上路
帖 子:5
专家分:4
注 册:2019-7-31
结帖率:0
收藏
已结贴  问题点数:20 回复次数:8 
scanf_s输入为啥总是异常中断?来自第三世界的呼唤
[local]1[/local]
[local]1[/local]

#include <stdio.h>
int main(void)
{
    int a1,a2;
    char c1,c2;
    scanf_s("%d%c%d%c",&a1,&c1,&a2,&c2);
    printf("%d,%c,%d,%c",a1,c1,a2,c2);
    return 0;
}
比如我输入:12a34b他就给我异常中断。。。。。

[此贴子已经被作者于2019-9-8 14:59编辑过]

搜索更多相关主题的帖子: 输入 int 异常 世界 中断 
2019-09-08 09:36
zbjzbj
Rank: 12Rank: 12Rank: 12
来 自:郑州
等 级:贵宾
威 望:52
帖 子:633
专家分:3045
注 册:2011-4-22
收藏
得分:4 
把scanf_s()换成scanf(),用dev c编译器运行,按你说的输入12a34b完全没问题
图片附件: 游客没有浏览图片的权限,请 登录注册

vs编译器不允许scanf()

[此贴子已经被作者于2019-9-8 17:00编辑过]

2019-09-08 10:00
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
收藏
得分:4 
用dev c编译器时,将scanf_s换成scanf,就可以了。
2019-09-08 17:36
c小白2333
Rank: 5Rank: 5
来 自:中国
等 级:贵宾
威 望:11
帖 子:121
专家分:367
注 册:2019-6-17
收藏
得分:4 
不要改项目属性里面的SDL检查
改成这样

 scanf_s("%d%c%d%c", &a1, &c1,1, &a2, &c2,1);

就可以了


[此贴子已经被作者于2019-9-8 22:15编辑过]


宝剑锋从磨砺出,梅花香自苦寒来。
2019-09-08 21:25
c小白2333
Rank: 5Rank: 5
来 自:中国
等 级:贵宾
威 望:11
帖 子:121
专家分:367
注 册:2019-6-17
收藏
得分:0 
建议几个可以看看的网址
希望会对你有所帮助
https://blog.
https://bbs.

宝剑锋从磨砺出,梅花香自苦寒来。
2019-09-08 21:57
c小白2333
Rank: 5Rank: 5
来 自:中国
等 级:贵宾
威 望:11
帖 子:121
专家分:367
注 册:2019-6-17
收藏
得分:0 
回复 4楼 c小白2333
一开始我改了项目属性里面的SDL检查为否
结果总是运行出问题
  找了好久才发现不能改。。。

宝剑锋从磨砺出,梅花香自苦寒来。
2019-09-08 22:18
bcbbcclbbc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:194
专家分:528
注 册:2019-8-15
收藏
得分:4 
回复 5楼 c小白2333
学到了,scanf_s与标准库scanf()多了一个限制性输入的条件,以防止数据输入不合理导致程序的其他位置出错
2019-09-10 10:52
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1694
专家分:4282
注 册:2007-12-27
收藏
得分:4 
scanf_s("%d%c%d%c",&a1,&c1,&a2,&c2);
应该写作
scanf_s("%d%c%d%c",&a1,&c1,1,&a2,&c2,1);
对每个%c或%s格式符,后面要对应两个参数,其中多出来的那个表示以字符为单位的长度。

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2019-09-10 17:05
LTao
Rank: 2
等 级:论坛游民
威 望:3
帖 子:27
专家分:86
注 册:2019-5-11
收藏
得分:4 
用scanf
刚开始时scanf_s 用的较少
2019-09-10 21:02
快速回复:scanf_s输入为啥总是异常中断?来自第三世界的呼唤
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017181 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved