0

ランク0がファイルからパラメーターを読み取り、MPI_BCASTを使用して他のすべてのランクのパラメーターをブロードキャストするMPIプログラムを作成しています。

取得したlonglong整数がゼロ以外であるかCでないかを検証しようとしていますが、変数がゼロ以外であるかどうかは検証できますが、その逆は検証できません。(変数をゼロに初期化しました)。ブロードキャストが正しく機能することを確認しましたが、検証できません

if ((min_length==0LL) || (max_length==0LL) || (stride_length==0LL) || (nflops == 0LL))

私はその逆を検証することができますが、すなわち

if ((min_length!=0LL) || (max_length!=0LL) || (stride_length!=0LL) || (nflops != 0LL))

内容を明確にするために、どの値もゼロではありません。取得した値がゼロの場合、プログラムを終了する必要があります。

前もって感謝します。

4

1 に答える 1

2

ド・モルガンの法則を使用して、状態を逆転/否定したい

if (min_length!=0LL && max_length!=0LL && stride_length!=0LL && nflops != 0LL) {
}

http://en.wikipedia.org/wiki/De_Morgan%27s_laws

于 2012-05-01T15:45:59.593 に答える