• ベストアンサー

指定の大きさのファイルを新規作成 (C言語)

そんなことができるのかどうかもわからないのですが、C言語で指定の大きさのファイルを新規作成するにはどうしたらいいのでしょうか?どんな関数を使ったらいいか、OSによって違ってくるのか等を教えていただけると嬉しいです。回答よろしくお願いします。

noname#113783
noname#113783

質問者が選んだベストアンサー

  • ベストアンサー
  • Gotthold
  • ベストアンサー率47% (396/832)
回答No.2

ファイル内容はどうでもいいなら、最近同じ質問があった。 ファイルサイズ指定し、ファイルを作成する。 -OKWave http://okwave.jp/qa5160876.html

noname#113783
質問者

お礼

fseek(f,1000000 - 1,SEEK_SET); //必要サイズ-1 fputc(0,f); //1バイト出力 この方法にしてみます!回答ありがとうございました。

その他の回答 (2)

  • asuncion
  • ベストアンサー率33% (2126/6286)
回答No.3

指定の大きさのファイルを作らなくても、当初の目的を達成できるような気がします。

noname#113783
質問者

お礼

普通にファイルに書き込んでいってもいいのですが、サイズが決まっているのなら先にファイルを作った方が実行速度が高速になるのかな、と思いました。勝手な推測なんですけどね。

  • aniline
  • ベストアンサー率42% (12/28)
回答No.1

反復とファイル入出力関数を使えばできますが、拡張子や内容はなんでもいいのでしょうか?

noname#113783
質問者

補足

拡張子はtxtで、内容はなんでもいいです。 目的はユーザーから受け取った文書をmallocで確保したバッファ(連結リスト)に分割して保存し、最後にテキストファイルにノードを順々に書き込んでいく、というプログラムを作ることです。

関連するQ&A

  • C言語のテキストファイルの読込み

    必要に迫られてC言語でテキストファイルの読込みを行う プログラムを作成しなければならなくなりました。 whileとfscanfを用いて書式を指定して一行ずつ読込むことができる ということは知っていますが、その際、たとえば読み込むファイルが 20行のテキストファイルだったとして、10行目から読込みを 行いたい場合はどのようにプログラムを書けばいいのでしょうか? なにぶんC言語初心者ですのでよろしくお願いします。

  • C言語でのディレクトリ作成についての質問です。

    C言語でのディレクトリ作成についての質問です。 Linuxコマンドのmkdir -pコマンドのようなことをC言語で実現したいのですが、 mkdir(dir1/dir2)のようにすると、エラーになってしまいます。 mkdir(dir1)のように階層でないディレクトリを指定した場合はうまくいくのですが・・・ mkdir関数では階層ディレクトリを1度で作成できないのでしょうか。 ディレクトリをたどってmkdirを1回ずつ使用しなければいけないのか、 階層ディレクトリを指定できる関数がほかにあるのか、 ご教授お願いいたします。

  • ファイルサイズ指定し、ファイルを作成する。

    こんばんは、 プログラミングの初心者です。 現在、c++でファイルサイズを指定して、ファイルを作成するプログラムを作っているのですが、どうすれば、サイズを指定してファイルを作れるのでしょうか?関数とかあれば、教えてください。 ファイル内容はかまないが、ファイルサイズが1MBです。 以上、よろしくお願いいたします。

  • C言語を用いたファイルの一括削除について

    C言語を用いたファイルの一括削除について 自分は、C言語でファイルの操作するプログラムを作成しているのですが、 たとえば、 out/temp1.jpg out/temp2.jpg out/temp3.jpg ここで、"out/temp"という文字列が一致するファイルを一括で削除したいのですが、 これはどういった関数を用いれば実現できるでしょうか? どうかよろしくお願いします。

  • C言語でのファイルの作成について(超初心者です)

    C言語を独学で勉強しています。 のちのち、C++も使えるようにと思い、ソフトも購入し使っています。 本(C言語のみ)などを見てサンプルプログラムを入力して実行はできるのですが、 フォルダとファイルの関係が全くわかりません。 1つサンプルプログラムを作るごとにフォルダを作成して 実行を繰り返しているのですが、 本当にそうしないといけないのでしょうか? 例えば、2つ以上のファイルを使ったプログラムは どうしたらいいのでしょうか? 超初心者なので コンパイルした後にできるファイルの意味も よくわかりません。 うまく説明できないのですが、このあたりのファイルの流れと意味を わかりやすく教えてもらえませんか? また こうした方がいいというものがあれば教えてください。 よろしくお願いします。

  • 「INT86(・・・・・・);」 って何でしょう?(C言語)

    C言語のソースをみていると、その中に INT86(); という関数が出てきました。 しかし、ソースのどこを見ても その関数が定義されているところがありません。 ほかにIncludeされているファイルは Windows標準のヘッダーファイルだけでした。 そこで質問なのですが、 この「INT86()」というのは標準の関数なのでしょうか? ご回答お願いいたします。

  • C言語でのファイルのデータ更新について

    C言語初級者です。 1行単位でデータが書いてあるファイルで、指定した行のデータを書き換えるようなプログラムはどのように記述すればよいのでしょうか。 必要な関数、処理の仕方など教授していただければと思います。 処理系はCygwinを使っています。 ファイルには五千行程度のデータが書いてあります。

  • ライブラリ作成時のグローバル変数の対応(C言語)

    C言語を用いてライブラリを作成しています。 ライブラリは機能ごとにファイルを分けています。 今、ライブラリの中でのみ使用するグローバル変数やグローバル関数が必要になりました。 このグローバル変数や関数は複数ファイルで参照するため、static宣言はできません。 しかし、このグローバル変数や関数は公開する必要はありません(ライブラリの中でのみ使用します)。 このようなことをC言語で実現するためにはどうしたらよいのでしょうか? 開発環境は Windows7 VisualC++2010 です。 VisualC++2010を使うなら C++で書けばいいのではないかといわれそうですが、 C言語でプログラミングしたいのです。 以下のようなサイトがあったのですが、これを使うしかないでしょうか? http://0xcc.net/blog/archives/000108.html

  • TCL言語の文字コード指定方法

    UNIX環境にて、OS時間を以下のフォーマットで 出力したいと考えています。 YYYY/MM/DD hh時mm分ss秒 ファイル出力の関数はTCL言語にて実装しています。 上記の関数をC言語で実装した関数より呼び出します。 ファイルを出力した際、出力結果にて日本語部分が 文字化けしてしまいます。 OS時間の取得はTCL関数内で実施しています。 文字コードをうまく設定できていないのだと思うのですが、 ファイル出力関数を呼び出す関数側(C言語で実装している関数側)にて、 文字コードを指定する方法をご存知の方はいらっしゃいませんでしょうか? よろしくお願い致します。

  • c言語教えてください

    C言語のBCC Developerで、「二つの三次元ベクトルの内積を計算する関数を作成する」をつくってもらえませんか?