if( 0&&
  f_in_check == 0 && fmovecheck == 0 && i > 0 && newdepth < 3 * INC_PLY)
{
  処理
}

といった感じの記述があったんですが、これだと
・0
・f_in_check == 0
・i > 0
・newdepth < 3 * INC_PLY

がすべて真のときでないとIF文の中に入らなくて
でも0があったら絶対に中に入らない気がするんですけど違うんでしょうか?

0&&っていうのが、判定のためのなんかのテクニック、ということなんでしょうか……?