アカウント名:
パスワード:
2の補数と符号無しの表現がこんがらがって2の補数の-1が符号無しの32768に化けたとか?
表示側は、1000 0000 0000 0000を単純に符号なし2バイトか4バイト以上の整数として判断した。ってことでしょうけど。
どういう入力や処理の結果として、そのデータになったのかが気になる。
自然数を返す関数のエラーを負数で表す悪習が原因ですかね表示側に渡る前に消すなり回送に置き換えるなりするはずだったのがすり抜けたとか
しかも、マジックナンバーを使っている悪寒が。
C言語なら、unsigned short型の変数にSHRT_MINを代入しちゃったというミスなんでしょうかね。- エラーが発生するとSHRT_MINを返す関数があり、その戻り値をunsigned shortに直接代入していた- 初期化時の値を適当にSHRT_MINにしてあり、当日はエラーのため値が上書きされずそのまま出力されたとかが考えられる気がします。
なんかそれだと探索の初期値っぽい気が。最初の要素で確実に上書きされるはずが、探索対象が空っぽでそのままきちゃったとか。
それなんてFF6のドリル装備・・・
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ハッカーとクラッカーの違い。大してないと思います -- あるアレゲ
2の補数 (スコア:1)
2の補数と符号無しの表現がこんがらがって2の補数の-1が符号無しの32768に化けたとか?
Re:2の補数 (スコア:1)
表示側は、
1000 0000 0000 0000
を単純に符号なし2バイトか4バイト以上の整数として判断した。
ってことでしょうけど。
どういう入力や処理の結果として、そのデータになったのかが気になる。
Re: (スコア:0)
自然数を返す関数のエラーを負数で表す悪習が原因ですかね
表示側に渡る前に消すなり回送に置き換えるなりするはずだったのがすり抜けたとか
Re:2の補数 (スコア:2)
しかも、マジックナンバーを使っている悪寒が。
Re: (スコア:0)
C言語なら、unsigned short型の変数にSHRT_MINを代入しちゃったというミスなんでしょうかね。
- エラーが発生するとSHRT_MINを返す関数があり、その戻り値をunsigned shortに直接代入していた
- 初期化時の値を適当にSHRT_MINにしてあり、当日はエラーのため値が上書きされずそのまま出力された
とかが考えられる気がします。
Re: (スコア:0)
なんかそれだと探索の初期値っぽい気が。
最初の要素で確実に上書きされるはずが、探索対象が空っぽでそのままきちゃったとか。
Re: (スコア:0)
それなんてFF6のドリル装備・・・