- ベストアンサー
メモリの確保について教えてください。
いつも拝見させて頂き、かなり勉強させていただいております。 今日は思い切って質問させていただきます! まだ独学でC言語の勉強を始めたばかりなので、分かっていないことも多く、不明瞭な書き方になってしまったら、申し訳ありません。 ファイルやデータベースから情報を読み込み、それを別のデータベースへインサートするプログラムを作っています。 fgetsやfetchでデータを取得するのですが、これまではループ(while(1))を使って 1行分のデータを取得し、簡単な処理(printfやカウントを取る等)をして、別データベースへインサートする。 という処理を、全てループ内で行ってきました。 しかし、今回は構造体を用意し、データの件数分の構造体領域をmallocで確保して簡単な処理を行い、別データベースへインサートするという課題があります。 mallocでは必用な分だけメモリを確保できるため、無駄がないと知りましたが、前に書いたようにループ内で取得からインサートまでを行う処理でも無駄は出ないように思います。 だとしたら、ループ内で全ての処理を行うのと、メモリを確保するのとでは何か違いや利点があるのでしょうか? もしくは、方法の違いだけで、どちらを使うかは違いがないのでしょうか? とても基本的な質問でしたら、申し訳ないのですが アドバイスを頂きたいと思います。どうぞよろしくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
お礼
Oh-Orange様 丁寧なご回答をどうもありがとうございます! とても勉強になりました。 データを一括して処理をするため、構造体へ読み込む必用があるということに気づいていませんでした。 今回の課題では一括して処理をするようなことはないようにも見えるのですが、私が気づいていないだけかも知れません。 本当にありがとうございました。