1

msg 形式のファイルが 2 つあります。ここでは、msg 形式は重要ではありません。

car.msg

int speed;
int width;

cararr.msg

car mycar[];

存在するすべての車に関するすべての情報を印刷したいのですが、存在する車の数 (配列の大きさ) がわからないため、次の手法を使用して情報を印刷します。

だから私はこれをします:

cararr* ptr2car;
for(int i=0;mycar[i] != '\0'; i++){
      cout << ptr2car->mycar[i].speed <<endl;
      cout << ptr2car->mycar[i].width <<endl;
}

それにもかかわらず、エラーが発生しています。何を間違えたのかわかりません。この出力を得るためにどのアプローチを使用すればよいかわかりません。助けてください

また、cararr inst2car のインスタンスを取得して次のようなことができるのに、なぜ cararr へのポインタを取得する必要があるのですか。

 cararr inst2car;
    for(int i=0;mycar[i] != '\0'; i++){
          cout << inst2car.mycar[i].speed <<endl;
          cout << inst2car.mycar[i].width <<endl;
    }

ありがとう

4

1 に答える 1