Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
freadを使用してcharバッファーに読み込みます。
char buffer[50]; int nbytes = fread(buffer, 1, 50, fp);
私が読んだファイルには、Helloという単語、つまり5バイトが含まれています。上記の例では、 nbytes6に等しくなります。なぜですか?
nbytes
さらに、ゼロバイトのファイル(つまり空のファイル)から読み取ると、0が返されます。
私の推測では、あなたが読んでいるファイルに書き込まれたものは何でも、文字列の後に改行 (テキスト ファイルの場合) または 0 バイトが含まれていると思います。UNIX を使用している場合は、次のコマンドを実行します。
od -c filename
印刷できないものを含むファイルの内容全体を印刷します。
次を実行することもできます。
wc --bytes filename
ファイルの長さをバイト単位で出力します(ファイル名とともに)。