C/C++の真偽の評価について質問なのですが
( i == 0 || data[i-1] == hoge )
で i == 0 の部分で真が確定した場合は
data[i-1]は評価されないことが保障されているのでしょうか?