gpt4 book ai didi

c - c scanf_s 中的异常

转载 作者:太空宇宙 更新时间:2023-11-04 06:11:20 24 4
gpt4 key购买 nike

我正在尝试编写一个简单的代码来输入 int 和 char 的值。 Visual Studio 抛出异常

#include<stdio.h>
int main() {

int i;
char c;

printf(" Enter the values");
scanf_s("%c %d",&c,&i);

return 0;
}

当我运行程序和输入值时,visual studio 抛出异常:在 main.exe 中的 0x599C939E (ucrtbased.dll) 抛出异常:0xC0000005:访问冲突写入位置 0x0032133E

最佳答案

您需要指定要为字符分配的内存大小。

 scanf_s("%c %d",&c,1,&i);

不会返回任何错误。由于 scanf() 函数有点“不安全”,VS 强制您使用 scanf_s 函数,这是一个更安全的选择。这样,用户将无法欺骗输入。

关于c - c scanf_s 中的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55880438/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com