問題タブ [input-buffer]
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.
c++ - C++ cin がスキップし続ける
プログラムに問題があります。実行すると、ユーザーにアルバムとタイトルを尋ねますが、価格と消費税を尋ねずにループを終了します。何が起こっているのですか?
これはサンプル実行です
プログラムコード:
java - Javaコンソールに入力を事前入力する
私は、テキストファイルで多くの検索/置換を行うコンソールベースのJava/Groovyアプリケーションを作成しています。たとえば、プログラムが前回に置き換えfoo
たbar
ことを認識している場合、デフォルトでは、次の置換もおそらく必要であることを認識しているはずfoo
ですbar
。私の考えは、プロンプトの入力フィールドに事前What would you like to rename this to?
入力して、不必要に再入力する必要がないようにすることでしたが、Javaでこれを行う簡単な方法を見つけることができません。
これは可能ですか?もしそうなら、それは推奨される方法でしょうか?
sql-server-2008 - SQL Server: SysProcesses と InputBuffer のクエリ
DBCC INPUTBUFFER(@SPID)
テーブルのクエリ時に、データベースに対して返された各レコードの入力バッファ データ ( ) を取得しようとしていSYSPROCESSES
ます。これを達成するためのより良い方法があるかどうかを知りたいと思っていますが、学習目的で現在取り組んでいるものを修正していただければ幸いです。
次のクエリを実行すると、次のようになります。
31行を返します...
ただしSELECT * FROM #TempResults
、上記のループを実行した後、一時テーブルに大量の重複が返されます...合計で10751になります。
繰り返しますが、これは主に学習用ですが、非常に便利な機能でもあります。重複したレコードが返される原因と、より良い解決策についての情報を探しています。
c - getcharがswitchケースで機能しない(c)
実行する操作をユーザーに求める非常に単純な計算プログラムを使用し、その後にこの操作を実行する2つの整数のプロンプトを表示します。プログラムは、ユーザーが文字「q」を入力した場合を除いて、これらの操作の後にループすることになっています。その時点で、プログラムは終了することになっています。
1回の計算では正しく機能しますが、その後は奇妙に機能します。特にそれは印刷します
完全に。
入力バッファをクリアする標準的な方法では、while (getchar() != '\n');
これは修正されません。このテキストが正しく表示されない場合の2回に1回は、ユーザーはプログラムを指示どおりに表示されているかのように使用できます(したがって、ユーザーは+、キャリッジリターン、整数、キャリッジリターンなどの操作を入力できます。プログラムはその時点から正しく実行されます)ただし、プログラムは入力に関係なく「無効なキーが押されました。qを押して終了します」と表示します。
c - cで入力バッファを処理する方法
私はcプログラミングに不慣れで、プログラムでこの問題に直面して
います。入力バッファーからcharを取得するループがあります。
これがgetInput()関数です
ただし、getInput()関数からgetchar()を呼び出すと、getchar()の最後の呼び出しから入力バッファーに残った文字のみが取得されます。そして、私がやりたいのは、新しく入力された文字を取得することです。
私は入力バッファをクリアするための適切な方法を2時間グーグルしてきましたが、何も役に立ちませんでした。したがって、チュートリアルや記事などへのリンクは非常に高く評価されています。これを実装する別の方法がある場合は、教えてください。
file - 文字列から解析した後にファイルから解析する方法は?
私の bison / flex パーサーは、ファイルから入力を読み取ることから始めます。
その後のある時点で、メモリ内の文字列から入力を読み取り、解析します。
ここまではうまくいきそうです。ただし、プログラムが最初のコードを使用してファイルから入力を再度読み取って解析する必要がある場合、プログラムは機能しません (セグメンテーション違反で終了します)。この問題の修正はありますか?
android - Androidでのファイル保存
私はxmlファイルを作成しており、デバイスコードに保存しています
ファイルは保存されています。ファイルを読み取ることもできますが、すべて問題ありませんが、この行を見てください
char[] inputBuffer = new char[responseBody.length()];
ファイルの保存時に保存される文字列の長さを計算しています。あるアクティビティでファイルを保存し、別のアクティビティから読み取っています。アプリケーションはファイルをローカルに一度保存するため、長さを取得できませんでした毎回文字列を返すので、動的にサイズを割り当てる方法はありますか?char[] inputBuffer
c - fseek(stdin,1,SEEK_SET) または rewind(stdin) を使用して、移植性のない fflush(stdin) の代わりに入力バッファーをフラッシュできますか?
「入力バッファに改行が潜んでいる」fflush(stdin)
というおなじみの問題に対処するための移植可能な方法ではないことを発見したので、使用する必要がある場合は次を使用しています。scanf
しかし、今日、cplusplus.com の fflushからメモした次の行に出くわしました。
fflush()...更新用に開いているファイル (つまり、読み取りと書き込みの両方のために開いているファイル) では、入力操作を実行する前に、出力操作の後にストリームをフラッシュする必要があります。これは、再配置 (fseek、fsetpos、rewind) または明示的に fflush を呼び出すことによって実行できます。
実際、私はそれを何度も読んだことがあります。そのため、サポートされている場合とscanf()
同じ目的を果たすために、次のいずれかを単純に使用できるかどうかを確認したいと思います。fflush(stdin)
PS rewind(stdin)
はバッファをフラッシュするのにかなり安全で実行可能のようですが、間違っていますか?
0 またはその場合に返される 1 以外のオフセットを使用できないため、fseek(stdin,0,SEEK_SET)
話している場合は間違いを指摘する必要がありました。stdin
ftell()