VS2017 scanf和scanf_s问题
我是一个初学者 老师留作业要求用switch语句编一个计算器 下面是我的代码
#include<stdio.h>
#include<stdlib.h>
int main()
{
int x, y, z;
char sign;
scanf_s("%c %d %d", &sign, &x, &y);
switch (sign) {
case'+':
z = x + y;
break;
case'-':
z = x - y;
break;
case'*':
z = x*y;
break;
case'/':
z = x / y;
break;
}
printf("%d", z);
system("pause");
return 0;
}
这个代码没错的 但是一调试就会出现
如果把scanf_s改成scanf就没问题了 我很困惑 求助各位 恳请解惑 谢谢大家了!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
scanf_s后面的参数还要加一个读取的长度,就象这样,为了防止缓冲区溢出。。