关于c语言出现Run-Time Check Failure #2 - Stack around the variable xxx‘ was corrupted异常的解决办法
#include <string.h>
int main() {
char password[] = { 0 };
int i = 0;
for (i = 0; i < 3; i++) {
printf("请输入密码:");
scanf("%s", password);
if (strcmp(password ,"123456") == 0) {
printf("登录成功\n");
break;
}
else {
printf("密码错误请重新输入\n");
}
}
if (i == 3)
printf("输入三次错误密码自动退出程序\n");
return 0;
}
编辑器如下错误:
大概意思是:运行时检查失败#2-变量密码‘周围的堆栈已损坏。
解决办法:将数组初始化范围加大即可。因为此处我定义的密码是6位,所以将数组初始化为10位,问题就解决了。
前:
后