ちょっと前まで二重否定(!!B) はB==TRUEの省略形だと思っていたんですよね。 というかB==TRUEとB!=0が同じ意味だとさえ思っていました。