dポイントプレゼントキャンペーン実施中!

使用する際にiを任意で決める配列:A[i]とB[i]があるとします。

このA[i]とB[i]に、ある関数内で計算した値を入力したい場合、関数内で計算された後どのように使用すればいいですか?

ちなみにこの関数は例えば、
double ABC(i,a,b)
{
A[i]=a*i;
B[i]=b*i;
}
とします。
ここで、この計算されたA[i]とB[i]をプログラム内で使用する方法がわからないです…

普通ならポインタで返したいところですがiを任意で決めますのでポインタの使用法がいまいちピンときません…

*A[],*B[]とかでいいんですかね?

どなたかこの初心者問題にアドバイスをよろしくお願いいたします。

A 回答 (1件)

ううむ。

可変長配列を作りたいのですね。
C/C++では、普通のやり方で配列を作るだけだと、使用する際に自動的に配列のサイズを変えてくれる(可変長の)配列は作れません。
ただし、C++には「vectorクラステンプレート」というものがあり、これが可変長配列を実現しています。
かなりはしょってますが、下にコードを。
#include <vector>
vector<int> vctInt(16);
vector<string> vctString(8);
vctInt.push_back(1);
vctInt.push_back(2);
vctInt.push_back(3);
vctInt.push_back(4);
vctString.push_back("Data_String1");
vctString.push_back("Data_String2");
vctString.push_back("Data_String3");
cout << vctInt[2] << endl;
cout << vctvctString[4] << endl;
-----
こんなことが出来ます。
Vectorを使用できない場合や、純粋なCで書く場合は、mallocなどで必要十分な領域を取得し、そこのどこかを指すポインタを生成してアクセスするのが普通でしょう。
…あまりやりたくはありませんが。

参考URL:http://www.geocities.jp/ky_webid/cpp/library/002 …
    • good
    • 0
この回答へのお礼

パッと見でみたことないような文字ばかり…
自分には難しそうなんであきらめることにします。
せっかくご回答いただいたのにすいません…
この度は本当にありがとうございました。

お礼日時:2006/11/16 19:22

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