Payne0222
2015-09-08 16:23
采纳率: 100%
浏览 2.4k
已采纳

VS2015,用scanf_s警告,循环输入的第一次正常,第二次出错。求指点

刚接触VS2015,在.net3.5 x86下写了个c程序。
#include

int main(void)
{
const int WEEK = 7;
int days, weeks,left;
printf("Please enter the numbers of days.\n");
printf("Enter 0 to quit.\n");
scanf_s("%d", &days):
{
left = days % WEEK;
weeks = days / WEEK;
printf("%d days is %d weeks and %d days left.\n", days, weeks, left);
scanf_s("%d", &days);
};
return 0;
}

第一次正常,第二输入就错误。
0x55FAB0E2 (ucrtbased.dll)处(位于 A5.11.3 days to weeks.exe 中)引发的异常: 0xC0000005: 写入位置 0x00000014 时发生访问冲突。

这种情况是什么问题?

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • threenewbee 2015-09-08 16:28
    已采纳
     scanf_s("%d", days, 8);
    ->
    scanf_s("%d", &days, 8);
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • Payne0222 2015-09-08 16:33

    第二处没注意到漏写地址符,谢谢

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题