以下は、グラフを実装する C コードです。このコードは、実行後にセグメンテーション違反をスローします。gdbを使用してプログラムをデバッグし、最初の malloc 操作の前にブレーク ポイントを設定しようとしました。malloc 操作の前のバッファの値は 0x00 です.....どうすればこの問題を解決できますか?
#include<stdio.h>
#include<malloc.h>
typedef struct graph
{
int v;
int e;
int **adj;
}graph;
int main()
{
int i,u,v;
graph *g=(graph*)malloc(sizeof(graph)); // first malloc call
scanf(" %d %d",&(g->v),&(g->v));
g->adj=malloc(sizeof((g->v)*(g->v)));
for(u=0;u<(g->v);u++)
{
for(v=0;v<(g->v);v++)
g->adj[u][v]=0;
}
printf(" Enter input");
for(i=0;i<(g->e);i++){
scanf("%d %d",&u,&v);
g->adj[u][v]=1;
g->adj[v][u]=1;
}
printf("print matriix ");
for(u = 0; u<(g->v); u++) {
for(v = 0; v<(g->v) ; u++)
printf("%d",(g->adj[u][v]));
printf("\n");
}
return 0;
}