指针的值分配错误

时间:2019-10-22 06:19:11

标签: pointers vector struct structure kruskals-algorithm

这是我试图实现某种算法的代码。帮帮我,为什么Edges [i]-> u的值将变为0。

#include <bits/stdc++.h>
using namespace std;

#define endl "\n"
typedef long long int ll;

typedef struct edge
{
       ll u,v,w;
}Edge;

int main()
{
 cout<<"Enter V: ";
 ll V;
 cin>>V;
 cout<<"Enter E: ";
 ll E;
 cin>>E;
 vector<Edge*>Edges(E);
 cout<<"For E edges enter \nu v w \n";
 ll uu,vv,ww;

 for(int i=0;i<E;i++)
 {
    Edges[i]=(Edge*)malloc(sizeof(Edge));
    cin>>uu>>vv>>ww;
    Edges[i]->v=vv;
    Edges[i]->u==uu;
    Edges[i]->w=ww;
 }
 cout<<Edges.size()<<endl;
  for(int i=0;i<E;i++)
  {
    cout<<Edges[i]->u<<" "<<Edges[i]->v<<" "<<Edges[i]->w<<endl;
  }
 }

我只是无法弄清楚错误是什么以及为什么输出的值是0。对于Edges [i] .v和Edges [i] .w,它显示正确。请对此进行帮助。

输出:

     Enter V: 3

     Enter E: 3


   For E edges enter 
   u v w 
   1 2 3
   2 3 4
   3 1 5
   3
   0 2 3
   0 3 4
   0 1 5

0 个答案:

没有答案
相关问题