問題タブ [off-by-one]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
2464 参照

c - 奇妙なエラー: C で文字配列を処理中にトラップを中止する

各文字のバイナリ値を文字列に格納し、それを配列に格納したいと考えています。しかし、のような関数をいじり始めるとmemset、デバッグを制御できなくなります。

出力:

誰かが光を放つことができればいいですね。出力を取得していますが、トラップが発生しています。

礼儀: これは、仲間のスタック フェロー ユーザー @Athabaska の修正プログラムです。

0 投票する
2 に答える
1759 参照

c - 理解できる理由なしに C のトラップを中止します (私にとっては ;))

次のコードは、コマンド 'gcc -lm' で問題なくコンパイルされます。

実行すると、次のようになります。

'Abort trap' の原因と最後の 'printf("Print this")' 文を取得できないのはなぜですか?

ご協力ありがとうございました!!

0 投票する
3 に答える
375 参照

c++ - CEIL は、正確な整数除算には高すぎる

今朝、私は大量のファイルを失いましたが、それらの 1 つのボリュームは内部的にも外部的にも最適化されていたため、100% の回復に必要なすべての情報が利用可能です。必要な場所に FAT を入力するだけです。

これを実行するプログラムを作成し、ファイルにダンプした FAT のコピーでテストしたところ、一部のファイル (526 個中 17 個) で FAT チェーンが 1 つの単一クラスターで長すぎることを除けば、完全に動作しました。となり、次のファイルと相互リンクされます。

幸いなことに、私は問題が何であるかを正確に知っています。EOF 計算で使用ceilしたのは、1 バイトを超えるだけでも余分なクラスター全体が必要になるためです。

このアルゴリズムは、サイズがたまたまクラスター サイズの倍数であるファイルを除いて、すべてのファイルに対して正常に機能します。

しばらく考えましたが、これを行う方法について途方に暮れています。簡単そうに見えて意外と難しい。

任意のサイズのファイルに対してどの式が機能しますか?

0 投票する
1 に答える
152 参照

go - fmt.Fscanf が消費する空白の数を明確にする方法は?

Go で PPM デコーダーを実装しようとしています。PPM は、平文のヘッダーとバイナリ イメージ データで構成されるイメージ形式です。ヘッダーは次のようになります (仕様から):

各 PPM イメージは、次のもので構成されます。

  1. ファイルの種類を識別するための「マジック ナンバー」。ppm イメージのマジック ナンバーは、「P6」の 2 文字です。
  2. 空白 (空白、TAB、CR、LF)。
  3. 10 進数の ASCII 文字としてフォーマットされた幅。
  4. 空白。
  5. ASCII 10 進数の高さ。
  6. 空白。
  7. 色の最大値 (Maxval) で、これも ASCII 10 進数です。65536 未満で 0 より大きい必要があります。
  8. 1 つの空白文字 (通常は改行)。

関数でこのヘッダーをデコードしようとしfmt.Fscanfます。次の呼び出し fmt.Fscanfは、ヘッダーを解析します (以下で説明する警告には対処していません)。

状態のドキュメント:fmt

注: Fscanetc は、返された入力の 1 文字 (ルーン) を読み取ることができます。これは、スキャン ルーチンを呼び出すループが入力の一部をスキップする可能性があることを意味します。これは通常、入力値の間にスペースがない場合にのみ問題になります。リーダーがFscanimplements に提供されている場合ReadRune、そのメソッドは文字の読み取りに使用されます。リーダーが も実装している場合UnreadRune、そのメソッドは文字を保存するために使用され、連続した呼び出しでデータが失われることはありません。その機能を持たないリーダーに ReadRune とメソッドをアタッチするには、 を使用します。UnreadRunebufio.NewReader

最後の空白の次の文字はすでに画像データの先頭であるため、fmt.Fscanf読み取り後に消費した空白の数を確認する必要がありMaxValます。私のコードは、呼び出し元によって提供されたリーダーで動作する必要があり、その一部はヘッダーの末尾を超えて読み取ってはならないため、バッファリングされたリーダーに何かをラップすることはオプションではありません。バッファリングされたリーダーは、実際に読みたい以上に入力から読み取る可能性があります。

一部のテストでは、最後にダミー文字を解析すると問題が解決することが示唆されています。

それは仕様通りに動作することが保証されていますか?

0 投票する
1 に答える
322 参照

vb.net - Application.ScreenUpdating = False が使用されている場合、小さな誤動作、例外なし VB.NET

これまでに見たことのない現象に遭遇したApplication.ScreenUpdating = Falseため、潜水艦がわずかに誤動作しました。エラーにはなりませんが、on にすると結果に off by one エラーが発生します。

繰り返しますが、例外はスローされません。の結果はわずかに間違っています。メソッド内で壊れていると思われる場所は次のとおりです。

0 投票する
4 に答える
1184 参照

java - ネストされた For ループが終了後にインクリメントする

2 つの for ループがあり、1 つは別のループにネストされています。ボタンの 2D 配列をループして、アクション リスナーを使用してクリックされた各ボタンのソースを取得します。

ボタンが見つかったら、ボタンの位置/配列インデックスを外部メソッドに渡します。ただし、ボタンの配列からボタンが見つかった場合、最初の for ループはその終了条件を FALSE と評価しますが、i の値をインクリメントします。1エラーでオフにつながります。私のコードは、「イベント」が ActionEvent である標準アクション実行メソッドにあります。buttons[][] は、インスタンス変数として定義された JButton 配列です。サイズは 10 x 10 で、既にパネルに追加されています。

私は、ラベルを使用してこの問題を解決しようとしているわけではありません。彼らは落胆しているようです。

0 投票する
2 に答える
125 参照

java - char-ing 文字列のエラーが 1 つずれます

このメソッドは、文字列を取り込んで文字列として出力することになっていますが、サイズは 2 倍にする必要があります。例: 文字列は「PaRty」です。戻り値は「P」、「P」、「a」、「a」、「R」、「R」、「t」、「t」、「Y」、「Y」である必要があります

私のコードでは、テストを実行すると、要素 [];expected: で配列が異なると表示されますが、:

私は間違っていることを理解できず、誰かが私が理解してこれを機能させるために何かを指摘するのを手伝ってくれることを望んでいましたか? そして、私が1つずれている場合は、説明してください?

0 投票する
0 に答える
106 参照

c++ - クイックソートは 50 を超える要素をソートしません

ソートする数値を生成する方法は次のとおりです。

これがメインの私の呼び出しです

クイックソート機能はこちら

ソートする要素の数が約 50 に近づくにつれて、ソートにかかる時間が指数関数的に大きくなります。私はアイデアがありません。これまでにこれに対処したことのある人はいますか?