C++ 运行时检查失败#2-围绕变量';b1和x27;腐败

C++ 运行时检查失败#2-围绕变量';b1和x27;腐败,c++,visual-c++,feof,C++,Visual C++,Feof,我的问题是,当我运行程序时,它告诉我“运行时检查失败#2-变量'b1'周围的堆栈已损坏。如果存在此异常的处理程序,程序可能会安全地继续。” while(!feof(fp)) { fscanf(fp、%2X、&a1[0]); fscanf(fp、%2X、&a1[1]); fscanf(fp、%2X、&a1[2]); fscanf(fp、%2X、&a1[3]); fscanf(fp、%2X、&a1[4]); fscanf(fp、%2X、&b1[0]); fscanf(fp、%2X、&b1[1]);

我的问题是,当我运行程序时,它告诉我“运行时检查失败#2-变量'b1'周围的堆栈已损坏。如果存在此异常的处理程序,程序可能会安全地继续。”

while(!feof(fp))
{
fscanf(fp、%2X、&a1[0]);
fscanf(fp、%2X、&a1[1]);
fscanf(fp、%2X、&a1[2]);
fscanf(fp、%2X、&a1[3]);
fscanf(fp、%2X、&a1[4]);
fscanf(fp、%2X、&b1[0]);
fscanf(fp、%2X、&b1[1]);
fscanf(fp、%2X、&b1[2]);
fscanf(fp、%2X、&b1[3]);
fscanf(fp、%2X、&b1[4]);
如果(foo==foo)
{
福。。。。
}

}
什么是b1?出示声明。如果(foo==foo);总是这样true@InQusitive
if(foo==foo);这总是正确的
不一定
foo
可以是一个
double
持有一个
NaN
值,或者是一个类的实例,它的
操作符==
实现异常。如果我不得不猜测:
a1
b1
字符的数组;但是,
%X
格式规范需要指向
int
的指针。然后,程序将显示未定义的行为。