吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1301|回复: 6
收起左侧

[求助] C语言问题

[复制链接]
Ting丶wep 发表于 2022-3-18 15:04
25吾爱币
求助:应该怎么改。

报错:

main.c:38:12: error: array subscript is not an integer
   38 |   (*adjlist[a])->FirstNode=p;
      |            ^
main.c:42:21: error: array subscript is not an integer
   42 |   p->pNext=(*adjlist[a])->FirstNode;
      |                     ^
main.c:43:12: error: array subscript is not an integer
   43 |   (*adjlist[a])->FirstNode=p;
      |            ^




# include<stdio.h>
# include<stdlib.h>

# define MaxVertex 1000

typedef struct AcrNode  
{
    int adjvex;
    struct AcrNode *pNext;
    int info;
}AcrNode,*pAcrNode;

typedef struct Vertex    
{
    int data;
    AcrNode * FirstNode;
}Vertex,Adjlist[MaxVertex];

void CreateVertexlist(Vertex*a)
{
    int i,n,k,b,j;
    Adjlist *adjlist=NULL;
    AcrNode*p;
    printf("输入总共有几个顶点几条边");
    scanf("%d %d",&n,&k);
    for(i=0;i<n;i++)
    {
        printf("输入第%d个节点的信息:",i);
        scanf("%d",adjlist[i]->data);
        adjlist[i]->FirstNode=NULL;
    }
    for(j=0;j<k;k++)
    {
        scanf("%d %d",&a,&b);
        p=(AcrNode*)malloc(sizeof(AcrNode));
        p->adjvex=b;
        /*p->pNext=(*adjlist[a])->FirstNode;*/
        (*adjlist[a])->FirstNode=p;

        p=(AcrNode*)malloc(sizeof(AcrNode));
        p->adjvex=b;
        p->pNext=(*adjlist[a])->FirstNode;
        (*adjlist[a])->FirstNode=p;
    }
}

最佳答案

查看完整内容

类型不匹配,a是Vertex*型,数组下标要求int

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

cocoan 发表于 2022-3-18 15:04
类型不匹配,a是Vertex*型,数组下标要求int
Typedef 发表于 2022-3-18 15:18
函数声明处:void CreateVertexlist(Vertex*a),a是Vertex*,在scanf()里被按照整形输入,这一步就有问题了,后边还把a当作整形来用。
wCoding 发表于 2022-3-18 15:20
Leon19960120 发表于 2022-3-18 16:55
这是c++吧
wycdd 发表于 2022-3-18 17:55
类型不匹配
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 14:45

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表