天使と悪魔選手権

配列について質問します。

BASIC系では配列は動的配列で要素の数が自由に変えられます。
ですが、C等では宣言時に配列の要素の数を決めておかねばならなかったと思います。
もし、C等で要素の数がわからないけど、配列を使いたい場合、どうすればいいのでしょうか?
どのように実現するのでしょうか?
配列と同じ使い勝手なら配列でなくともかまいません。

今はVBAでプログラムを組んでいるので、動的配列を使えばすむのですが、いずれ他の言語に移植したいので、できるだけ使わないようにしたいと思っています。

よろしくお願いいたします。

A 回答 (3件)

malloc等のメモリ確保はNo.1さんの回答のリンクが詳しいですね。


C言語でプログラムを組む場合は、大抵はこれらメモリ操作関数のお世話になります。

これに加えて、C++やJavaのライブラリでは、動的配列クラスというものが使えます。
C++だとvectorやlist、JavaだとVectorやArrayListあたりですね。
他にも、言語や環境に依存したライブラリ、フレームワークで
様々な動的配列の機構が用意されていたりします。

簡単にまとめると、
・malloc、free、realloc等を使う方法 → ReDim
・動的配列クラス → Collection
のようなものだと考えてください。
    • good
    • 0
この回答へのお礼

ありがとうございます。具体的に例を挙げていただいたので、イメージがとてもわきました。No.1さんの回答とあわせると、理解が深まりました。どうもありがとうございます。

お礼日時:2007/02/08 16:43

C/C++なら配列使わないで構造体+ポインタでチェーン構造作るのはためなの?

    • good
    • 0
この回答へのお礼

ありがとうございます。知識不足でピンときませんでしたが、今後取り組む際にはぜひ参考にさせていただきます。

お礼日時:2007/02/08 16:46

mallocを使います。


いいサイトがありましたので、
書いておきます。
http://homepage3.nifty.com/mmgames/c_guide/19-01 …

参考URL:http://homepage3.nifty.com/mmgames/c_guide/19-01 …
    • good
    • 0
この回答へのお礼

ありがとうございました。とても参考になるサイトでした。Cの知識をかなり忘れていたのでちょっと理解しにくいところもありましたが、なんとなく理解できました。もう一度C系の言語にチャレンジするときはぜひ参考にさせていただきます。

お礼日時:2007/02/08 16:41

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!