如果条件,C ++表现不正确

时间:2016-12-20 12:36:30

标签: c++ gdb

我正在运行一个程序,我的if条件被错误地评估。您可以从下面的代码中看到,虽然变量N1::fRunningPSWave的值为true,但它不会根据if条件执行正确的代码。知道可能导致这种情况的原因。

    Breakpoint 4, pswIsMaster () at swqueue.cc:530
530         if (N1::fRunningWave)
(gdb) n
533             return 1;
(gdb) l
528     U pswIsMaster()
529     {
530         if (N1::fRunningWave)
531             return pthread_equal(SWave::tidMasterWave, pthread_self());
532         else
533             return 1;
534     }
535
(gdb) p N1::fRunningWave
$43 = true

0 个答案:

没有答案