指针结构数组,编译通不过。有劳各位高手指点

泠然 发布于 2010/10/31 20:05
阅读 159
收藏 0

#include<iostream>
using namespace std;
struct car//定义结构;
{
 char productor[34];
 int d;
 };
int main()
{
    int n,i;
    car *p;//定义结构指针;
    cout<<"How many car do you want:";
    cin>>n;
    cout<<endl;
   p=new car[n];//动态指针数组;
   for(i=0;i<n;i++)
   {
     cout<<"Car"<<" "<<"#"<<i+1<<endl;
     cout<<"please enter the make:";
     cin>>*p[i].productor;
     cout<<"Please enter the year made:";
     cin>>*p[i].d;
}
  cout<<"Here is your collection:"<<endl;
   for(i=0;i<n;i++)
    {
        cout<<*p[i].d<<" "<<*p[i].productor<<endl;
 
        }
        delete[]*p;
        system("pause");
     return 0;
        }

 


    

 

加载中
0
大东哥
大东哥

delete[]*p;
这里错误,改成delete[] p;

0
antipro
antipro

我怎么感觉*p[i]的写法不对,似乎只要p[i]就可以了。

嗯,*p[i]指的是第i个指针指向的对象,可是你这里只有一个指针而已。

返回顶部
顶部