問題タブ [scanf]

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 投票する
4 に答える
1337 参照

c - sscanf() 警告を取り除く

stdin から MAC アドレス (標準の 16 進数表記、例: 00:11:22:33:44:55) を読み取り、10 進数として 6 バイトの変数 hw_addr に変換しています。

唯一の問題は、6 つの scanf 警告が表示されることです。

.....

各フィールドの int を無駄にすることなく、これらの警告を取り除く方法はありますか?

0 投票する
5 に答える
3734 参照

c - while ループ内の scanf

このコードでは、scanf一度だけ機能します。私は何を間違っていますか?

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

c - 動的文字列入力 - scanf("%as") を使用

GCCマニュアルで指定されているように、動的に入力を使用scanfして保存しようとしていますが、コンパイル時にエラーが発生しています。char *

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

c - Win32 ConsoleInput関数を使用しているときにscanfが機能しないのはなぜですか?

これはサンプルコードです。プログラムでこれらの関数を使用していますが、scanfがうまく機能しません。入力が表示されず、Enterキーが2回押された後にのみ入力を受け入れます。

これはコードです:

手伝ってくれてありがとう!

0 投票する
8 に答える
25094 参照

c - 取得する前にC.Scanfに入力します。問題

私はCにかなり慣れていないので、プログラムへのデータ入力に問題があります。

私のコード:

IDを入力できますが、残りの入力はスキップされます。このように順序を変更した場合:

それが動作します。ただし、順序を変更することはできず、そのまま必要です。誰かが私を助けることができますか?多分私は他のいくつかの機能を使う必要があります。ありがとう!

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

c - この問題に関する簡単な質問ですが、文字列の 2 番目の値 (変換された 2 番目の値) を出力しないのはなぜですか?

簡単な質問です。ここで何が間違っていましたか。このコードの目的は、入力を文字列に取得することです。入力は "12 34" で、"12" と "32" の間にスペースがあります。番号。関数 copyTemp の 2 回目の呼び出しで値 34 が生成されないのはなぜですか? 文字列インデックスを追跡する index_counter 変数があり、「スペース」文字をスキップすることを意図していますか?? 私は何を間違えましたか?

ありがとう。

0 投票する
9 に答える
67279 参照

c - scanf の短所

のデメリットが知りたいですscanf()

多くのサイトで、使用scanfするとバッファ オーバーフローが発生する可能性があることを読みました。これの理由は何ですか?他に欠点はありscanfますか?

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

c - scanf() でのアンパサンドの使用

をコンパイルするscanf("%s", &var);と、gcc から警告が返されます。

ただし、コンパイルするscanf("%s", var);と、警告は適用されません。コードの両方の部分と私が読んでいる本では、アンパサンドを使用するように具体的に述べられていますが、一部の例ではそうではありません。

私の質問は、本で指定されていない場合でも、アンパサンドを使用し続ける必要があるかということです。

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

c++ - データの前に scanf でキャリッジ リターンを無視します.... conio.h でコンソール ベースのグラフィックスのレイアウトを維持します

残念なことに、大学の課題で vc++ 6 の conio.h を使用していました。

私の問題は、グラフィック設定が画面の中央にあることです...

例えば

誰かが「何か」を入力する前に誤ってエンターを押した場合、カーソルは次の行の画面の左側にリセットされます。

Iv は、fflush(stdin) と getchar() を使用してキーボードと BIOS バッファーをフラッシュしようとしましたが、予想どおり機能しませんでした。

ヘルプ/アイデアをいただければ幸いです, ありがとう, V

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

c - 関数を C のファイルではなく文字列から読み取るように変換する

現在、ディスクから構成ファイルを読み取り、構造を設定する関数を更新することを任されています。

構成をディスクに書き込むことをバイパスし、代わりにメモリに直接渡すことができるようにするもので、これとほぼ同等です。

いくつかの注意事項:

  • 現在の LoadFromFile 関数は信じられないほど高密度で複雑で、下位互換性のある方法で構成ファイルの数十のバージョンを読み取るため、全体的なロジックの複製が非常に面倒です。
  • 構成ファイルを生成する関数とそれを読み取る関数は、古いシステムのまったく異なる部分に由来するため、データ構造を共有しないため、それらを直接渡すことはできません。ラッパーを作成することもできますが、ここでも、下位互換性のある方法で渡された構造を処理する必要があります。
  • ファイルを文字列として (上記のプロトタイプのように) そのまま渡し、すべての fscanf を sscanf に変換したいという誘惑にかられますが、ポインタのインクリメント (および潜在的にはバッファ オーバーラン エラーの処理) を手動で処理する必要があります。
  • これは C のままにしておく必要があるため、ストリームのような C++ 機能はここでは役に立ちません

より良いオプションがありませんか?ディスク上ではなくメモリ内の場所を実際に指す FILE * を作成する方法はありますか? ポインタ、提案、またはその他のヘルプは大歓迎です。