問題タブ [cstdio]

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

c++ - osx で cstdio の fopen と fclose が正しく動作しない

ファイルアクセスにcstdioを使用するopenframeworksを通じてtinyxmlを使用しています。サンプル プログラムが非常にうまくファイルを作成および書き込むのを見ることができますが、削除がないため、私の計画では削除を実装する予定ですが、自分のプロジェクトでこのコードを実行しようとした後、ファイルを作成したり、ファイルを通知したりしないようです。エラー。

このコードは Windows では期待どおりに動作しますが、Mac osx 10.8.5 では動作しません。ファイルは生成されません。

編集:ファイルが存在することがわかったので、そこから読み取ることができます。ファインダーで表示することはできません。隠しファイルが表示されていますが、アプリのパッケージの内容には含まれていません。

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

c++ - << s.str() と << s.rdbuf() の違い

誰かが微妙な違いを説明できますか:

私は主に .rdbuf() を使用して文字列ストリームをファイルにプッシュしますが (より効率的であるため)、ファイルストリームよりも文字列ストリームが空の場合は...? これはばかげていませんか?よくわからないと思いますが<< s.rdbuf()...

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

c++ - 単純な C++ プログラムでコンソール出力がない

C++ の一部のプログラムで奇妙な動作が発生していることに気付きました。その原因を突き止めようとしたところ、コンソール出力で何か問題が発生していることがわかりました。同じ動作で iostream および cstdio 関数を使用しました。コンソールに何かを印刷すると、まったく表示されません。この奇妙な動作を観察するために使用したコードを次に示します。このコードは、すべてを適切に出力します (IMO ではない場合でも)。

ただし、これは(正しいと思います)何も表示せず、実行終了メッセージのみが表示されます

「\n」の前のスペースを削除して試してみましたが、違いはありませんでした。ただし、プログラムの最後に「\ n」を付けて同じprintf関数をさらに配置すると、すべてが正しく表示されます(もちろん複数回)。Iostream も同様に動作します。endl を使用しても、コンソールには何も表示されません。私は何を間違っていますか?誤動作の原因となった元のコードに関しては、私の出力では何も表示されないことに気付きましたが、私の学校では、同じコードがすべてを正しく出力しました。NetBeans 8.0.2 で作業しています。助けてくれてありがとう

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

c - fscanf() を使用するときの C フォーマット指定子を理解していない

だから私はこの形式のテキストファイルを読んでいます:

fscanf() を使用してデータを解析しようとしています。このファイルは、ロードする方法で動的にする必要があるため、拡大または縮小する可能性があるため、malloc を使用し、以下の構造体にも格納したいのです。問題はスペースにあるか、フォーマット指定子全体を正しく記述していない可能性さえあると思います。これが私のコードです。

はい、ヘッダーファイルを含めていないことは承知していますが、適切な stdlib と stdio を持っています

更新 1: 両方の返信を試しましたが、画面に次のように表示されます。

51.555 が構造体の次の項目に移動していないのはなぜですか? ありがとう

/////////////////////////////////////////////// /////////////更新2///////////////////////////////// /////////////////////

さて、次のようにコードを変更しました。

cp[0].name; を印刷しようとすると、このように、スペースなしで最初の行全体を取得します。

print cp[0].lat; を取得した場合 私はこれを取得します。

そして、私が cp[0].lng; を印刷するとき。私はこれを取得します。

どれが唯一正しいのか、私はこの振る舞いを理解できません。なぜこのように振る舞うのですか?すべての投稿は、(私が最初に考えたように) fscanf の各 %s がそれらを連結せずに独自の変数に入れることを示唆しています。ドット表記または直接を使用するかどうかは問題ではありません->それでも同じ結果が得られます。ありがとう :)

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

c - C の複数入力

抵抗値の複数の入力を取得する関数を作成しようとしています。私の主な機能では、プログラムはユーザーに必要な抵抗の数を尋ねるように求めます。ユーザーが必要とする抵抗の数は、プログラムがユーザーに抵抗値の入力を求める回数になります。問題は、エラーステートメントを作成し、ユーザーに値を再度入力させるためにどのループを使用する必要があるかです。入力は整数のみを受け入れます。コードは次のとおりです。

出力は次のようになります。

回路にいくつの抵抗を配置しますか?

3

抵抗器の値を入力してください:

抵抗器 #1 を入力してください:

あいうえお

無効な抵抗です!

再入力抵抗 #1:

5

抵抗器 #2 を入力してください:

6

...

それは私のコードでは起こりません。助けてくださいありがとう!

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

c++ - C++ プログラムで C & C++ スタイルの I/O を混在させる必要がありますか?

この質問は私を大いに混乱させます。C++ は C のスーパーセットであるため、 printf ()、scanf() などの C のライブラリ関数を自由に使用できます。. iostream はより型安全で、エラーが発生しにくく、拡張可能で、柔軟で、継承可能であるためです。iostream の利点のために従来の C の I/O 関数の使用をやめるべきですか、それともプログラムを変更して使用するべきですか? どちらのアプローチが優れていますか? C と C++ の I/O を混在させる場合、どこに注意すればよいですか。従来の C プログラムとの下位互換性が必要であることはわかっていますが、実際にはどうすればよいのでしょうか?

0 投票する
6 に答える
4156 参照

c - バッファサイズがわからない場合に危険な vsprintf を回避する方法

私の問題は、バッファ サイズ パラメータを my_sprintf に追加できないことです。これは、5 万を超える場所で使用されているためです。vsprintf を vsprintf_s または vsnprintf に置き換えることはできません。

上記の機能をより安全にするための代替手段はありますか?