迷途的启木菌 2019-08-18 22:43 采纳率: 50%
浏览 1222
已采纳

我声明了的,为什么还显示error C2065: “p”: 未声明的标识符?

求大神看看哪里有问题,谢谢!

#include<stdio.h>
typedef struct st
{
    char name[10];
    int n;
    double score;
    struct st *next;
}lb;

int main(void)
{
    lb s1={"wanghu",4565,98.1,NULL};
    lb s2={"fsdg",6366,64.81,NULL};
    lb s3={"jfgjdf",6753,68.1,NULL};
    lb s4={"tcg",2546,95.7,NULL};
    lb *head=&s1;
    s1.next=&s2;
    s2.next=&s3;
    s3.next=&s4;
    s4.next=NULL;
    lb *p=head;
    while(p!=NULL)
    {
        printf("name:%s\nnumber:%d\nscore:%.2f\n\n",p->name,p->n,p->score);
            p=p->next;
    }
    return 0;
}

运行不了,显示我的p是没有声明的标识符。

1>------ 已启动生成: 项目: ghgfh, 配置: Debug Win32 ------
1>  190729.c
1>d:\重要的事情\ghgfh\ghgfh\190729.c(21): error C2275: “lb”: 将此类型用作表达式非法
1>          d:\重要的事情\ghgfh\ghgfh\190729.c(8) : 参见“lb”的声明
1>d:\重要的事情\ghgfh\ghgfh\190729.c(21): error C2065: “p”: 未声明的标识符
1>d:\重要的事情\ghgfh\ghgfh\190729.c(22): error C2065: “p”: 未声明的标识符
1>d:\重要的事情\ghgfh\ghgfh\190729.c(22): warning C4047: “!=”:“int”与“void *”的间接级别不同
1>d:\重要的事情\ghgfh\ghgfh\190729.c(24): error C2065: “p”: 未声明的标识符
1>d:\重要的事情\ghgfh\ghgfh\190729.c(24): error C2223: “->name”的左侧必须指向结构/联合
1>d:\重要的事情\ghgfh\ghgfh\190729.c(24): error C2065: “p”: 未声明的标识符
1>d:\重要的事情\ghgfh\ghgfh\190729.c(24): error C2223: “->n”的左侧必须指向结构/联合
1>d:\重要的事情\ghgfh\ghgfh\190729.c(24): error C2065: “p”: 未声明的标识符
1>d:\重要的事情\ghgfh\ghgfh\190729.c(24): error C2223: “->score”的左侧必须指向结构/联合
1>d:\重要的事情\ghgfh\ghgfh\190729.c(25): error C2065: “p”: 未声明的标识符
1>d:\重要的事情\ghgfh\ghgfh\190729.c(25): error C2065: “p”: 未声明的标识符
1>d:\重要的事情\ghgfh\ghgfh\190729.c(25): error C2223: “->next”的左侧必须指向结构/联合
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

  • 写回答

2条回答 默认 最新

  • J4cks0n 2019-08-19 10:31
    关注

    你可以先在上面声明再用
    lb *head=&s1;
    lb *p;
    。。。。。。。。。。

    p=head;
    
    或者你换个新的编译器
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 关于#目标检测#的问题:(qq收集表到时间才能填写,填写的份数有上限)
  • ¥50 ZYNQ7020双核FLAHS烧写的问题
  • ¥20 ue 5 中想要实现第一人称人物左右行走摆动的效果,摄像头只向右摆动一次(关键词-结点)
  • ¥15 钢岔管添加弹性约束模拟围岩作用
  • ¥15 AD9164瞬时带宽1.8G,怎么计算出来?
  • ¥15 鼠标右键,撤销删除 复制 移动,要怎样删除
  • ¥15 使用MATLAB进行余弦相似度计算加速
  • ¥15 服务器安装php5.6版本
  • ¥15 我想用51单片机和数码管做一个从0开始的计数表 我写了一串代码 但是放到单片机里面数码管只闪烁一下然后熄灭
  • ¥20 系统工程中,状态空间模型中状态方程的应用。请猛男来完整讲一下下面所有问题