“struct”之前需要有“;”、标识符或“(”

问题描述 投票:0回答:0

为什么我不能把

struct student s;
放在那个地方?

这是错误的代码

#include<stdio.h>

struct student
{
    int num;
    char name[20];
    float mark;

}struct student s;

int main()
{
    scanf("%d%s%f",&s.num,s.name,&s.mark);
    struct student *ptr=&s;
    printf("%d\n",s.num);
    printf("%d\n",ptr->num);
    printf("%d",(*ptr).num);
    return 0;
}

这是没有错误的代码

#include<stdio.h>

struct student
{
    int num;
    char name[20];
    float mark;

}


int main()
{
    struct student s;
    scanf("%d%s%f",&s.num,s.name,&s.mark);
    struct student *ptr=&s;
    printf("%d\n",s.num);
    printf("%d\n",ptr->num);
    printf("%d",(*ptr).num);
    return 0;
}

当我尝试学习 C 语言中的 struct 时,我坚持了这一点。我可以理解这段代码有什么问题。我只是对编程很感兴趣。帮我找找吧

c struct
© www.soinside.com 2019 - 2024. All rights reserved.