問題タブ [low-level-io]
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 - 「完全エラートラップ」とは?
低レベルの I/O のみを使用して C でプログラムを作成します。
プログラムには、完全なエラー トラップが必要です。特に、プログラムは perror() を使用してシステムエラーを報告する必要があります...
私のプログラムでは...
読み取り/書き込み試行ごとにそのようなコードを実装すると、これは「完全なエラー トラップ」と見なされますか?
注:test()
デバッグ用であり、後で削除されます:
c - 低レベル I/O - 読み取り/作成/書き込み (C)
C で低レベル関数を使用しようとしていて、STDIN から読み取り、その情報をファイルに保存したいと考えています。
「file.txt」にアクセスして読み取り、画面に印刷するか、別のファイルに保存する方法を理解するのに問題があります。'read("file.txt", buffer, sizeof[buffer])' を使用しますか?
編集 「file.txt」を作成した後、別のファイルを開きたいとします。file1(argv [3])と言って、「file.txt」をfile1(agrv [3])にダンプします。これは機能しますか?
両方のファイルを開いていますが、「file.txt」を argv[3] に書き込む方法がわかりません。
c - 低レベルの write() 関数を使用してファイルに文字列を書き込むにはどうすればよいですか?
たとえば、入力ファイルの内容を次のように出力ファイルに書き込むことができます。
ユーザー入力もあります。
write(); を使用して、ユーザー入力を同じ出力ファイルに追加したいと考えています。
これどうやってするの?
----- 更新 ---- で動作します
c - ファイル名を受け入れ、ファイルの内容を stdout に出力する C 低レベル標準入力
stdin を介してユーザーからファイル名を取得し、open() でファイルを開き、それをファイル記述子に割り当ててから、そのファイルの内容を stdout に出力したいと考えています。これは私のコードで、正しく動作していません。
問題:
- printf("ファイル名を入力"); ステートメントは決して表示されません
- ファイルを開くことはありません。代わりに、ユーザーが入力したものはすべて画面に出力され、「そのようなファイルまたはディレクトリはありません」というエラーメッセージが出力され、プログラムが終了します
- プログラムが存在した後、ターミナルのプロンプトの前に「ファイル名を入力してください」と表示されます
コード:
コンソール:
c - C プログラムが何も出力しないのはなぜですか?
私のコードは、コマンドラインで指定された 2 つのファイルを読み取り、3 番目の引数が指定されていない限り、それらを STDOUT に出力することになっています。この場合、STDOUT ではなくそのファイルに出力する必要があります。すべてが正しいように感じますが、プログラムを実行しても何も出力されません。なぜそうでないかについて何か見つけることができますか?新しい目のセットは常に役に立ちます。
linux - ブロック レベル/セクター レベルでファイルの内容を表示する
セクタ/ブロック レベルでファイルの詳細/内容を表示するコマンドがあるかどうか知りたいですか? つまり、次の詳細が必要です: 2 つのファイルがあります。ブロック/セクター レベルで保存されている内容が 2 つのファイルで同じかどうかを知る必要がありましたか?それを確認するコマンドまたはツールはありますか?もしそうなら、お願いできますか?正しい方法で私を導く?比較している両方のファイルが Linux オペレーティング システムを実行していることはわかっています。
追加情報: これが私の状況です。2 つのイメージ ファイルがあります。ブロック/セクター レベルで 2 つのイメージ ファイルの内容が同じかどうかを確認したい (カーネル コードが存在する最初の数メガバイト)。ファイルにはLinux OSが含まれています。両方の最初の数MBが同じである必要があることはわかっています。したがって、次のことを行いました。
ls -i web-test.img -- inode を 13 として取得
debugfs /dev/sdb1
統計 <13> -- (ETB0): 33409
- dd if=/dev/sdb1 of=success.txt ibs=4096 count=1 skip =33409.o/p の内容が明確な txt にありません。内容が同じかどうかを確認する必要がありました。
簡単に言えば、ブロック/セクター レベルで両方のファイルの画像ファイル (カーネル部分) から最初の数 MB のデータを読み取る
お返事を楽しみにしています。