我有一个代码片段,这是第一次只发起两个int
值。这是代码行:
int xb2,yb2 = 0;
但是,根据调试器,当它遇到这行代码时,xb2的值为4262504
!
导致这种情况的原因是什么?
顺便说一句,抱歉,如果我遗漏了一些明显的东西,我是C ++的新手。
答案 0 :(得分:6)
xb2
设置为4262504
(某些任意值,通常是事先在堆栈上该位置发生的事情),因为您从未将其初始化为0
。
正确的方法是
int xb2 = 0, yb2 = 0;
此外,你说它是一个奇怪的价值"当它遇到这行代码"。确保您在调试器中实际执行该行。如果光标位置或高亮显示 on 那行,通常意味着它是下一个要执行的那个。换句话说,你可能需要做一个更多步骤操作。
答案 1 :(得分:2)
您的代码
int xb2,yb2 = 0;
只是将值0设置为yb2,
试试这个:
int xb2=0,yb2=0;