mot*_*tor 0 c++ crash variables integer
这是WTF城市.
几千个循环后,下面的程序崩溃了.
unsigned long int nTurn = 1;
bool quit = false;
int main(){
while(!quit){
doTurn();
++nTurn;
}
}
Run Code Online (Sandbox Code Playgroud)
当然,这简化了我的游戏,但是nTurn目前无处可用,但它的增加,当我注释掉++ nTurn行时,程序将永远可靠地循环.不应该碰到数百万吗?
WTF,stackoverflow?
你的问题在别处.
程序的其他部分是从最终指向的野指针读取nTurn,当此循环更改值时,其他代码的行为不同.或者存在竞争条件,并且增量使得这个循环只需要更长的时间,因此竞争对手不会造成麻烦.在其他地方你可能会遇到无数的错误.
你能在valgrind下运行你的程序吗?它找不到一些错误,但会有很多错误.