0

私は奇妙な問題よりも大きな問題を抱えています。

iGhostLen は -1 で、iMaxGhost は 480 です。打たれます。

-1 は特殊なケースですか、それともどこで間違った可能性がありますか。-1 が 480 より大きいとは思いません。

ありがとうございました。

unsigned int iMaxGhost=(120 * 4);
int iGhostLen=-1

if (iGhostLen > iMaxGhost)
{
    iGhostLen=iMaxGhost;
}
4

2 に答える 2

0

これiMaxGhostは、署名されていないのに署名されているために発生iGhostLenします。符号付きの値は、変換のために符号なしの値に変換されます (したがって、-1 は非常に大きな値になります)。

iMaxGhostこれは、符号付き整数に変更するか、負の値の特殊なケースを用意することで修正できます。

于 2013-10-13T19:47:02.647 に答える