鱼C论坛

 找回密码
 立即注册
查看: 1169|回复: 15

[已解决]结构变量

[复制链接]
发表于 2020-8-30 11:02:38 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
下面定义结构变量的语句错误的是
A. struct student {int num;char name[20];}s;
B.struct  {int num;char name[20];}s;

C. struct student {int num;char name[20];};struct student s;
D. struct student {int num;char name[20];};student s;
最佳答案
2020-8-30 12:05:53
本帖最后由 baige 于 2020-8-30 12:37 编辑

D
这道题考察的是  结构体定义的三种方式
1,先构造,后定义
2,构造同时定义
3,构造同时定义,省略类型名,但不能定义新变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-8-30 12:05:53 | 显示全部楼层    本楼为最佳答案   
本帖最后由 baige 于 2020-8-30 12:37 编辑

D
这道题考察的是  结构体定义的三种方式
1,先构造,后定义
2,构造同时定义
3,构造同时定义,省略类型名,但不能定义新变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-30 12:38:01 | 显示全部楼层
定义都没错啊
若非要选一个的话,我选B
因为B没有给出结构体的名字,相当于没有给出该类型数据的名字,不能再次定义该类型的变量,但是这里的一的这个结构体变量s是可以使用的。
程序不会报错,最多是有一个警告吧,警告说你这个结构体类型没有名字。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-30 12:55:58 | 显示全部楼层
sunrise085 发表于 2020-8-30 12:38
定义都没错啊
若非要选一个的话,我选B
因为B没有给出结构体的名字,相当于没有给出该类型数据的名字,不 ...

C语言的话D是错的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-30 13:09:38 | 显示全部楼层
baige 发表于 2020-8-30 12:55
C语言的话D是错的

学习了。看来我是C++看多了,没有注意到C的这个细节
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-30 15:26:03 | 显示全部楼层
D错了啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-1 23:17:40 | 显示全部楼层
baige 发表于 2020-8-30 12:05
D
这道题考察的是  结构体定义的三种方式
1,先构造,后定义

D咋错的呀,是因为分号码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-1 23:18:28 | 显示全部楼层
雨天Zz 发表于 2020-9-1 23:17
D咋错的呀,是因为分号码

struct student {int num;char name[20];};struct student s;
这样才是对的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-3 20:13:30 | 显示全部楼层
baige 发表于 2020-8-30 12:05
D
这道题考察的是  结构体定义的三种方式
1,先构造,后定义

这四个选项分别属于定义结构变量的哪几种方式
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-3 20:25:21 From FishC Mobile | 显示全部楼层
雨天Zz 发表于 2020-9-3 20:13
这四个选项分别属于定义结构变量的哪几种方式


231,CD一样
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-3 20:27:40 | 显示全部楼层

啥叫先构造,后定义啊?没搞明白,老师能不能讲一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-3 20:29:22 From FishC Mobile | 显示全部楼层
雨天Zz 发表于 2020-9-3 20:27
啥叫先构造,后定义啊?没搞明白,老师能不能讲一下

构造struct student {int num;char name[20];}
定义就是定义这个结构体的变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-3 20:31:09 | 显示全部楼层
baige 发表于 2020-9-3 20:29
构造struct student {int num;char name[20];}
定义就是定义这个结构体的变量

奥,那}后面加了个分号,就是分先后顺序,先构造后定义吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-3 20:31:32 From FishC Mobile | 显示全部楼层
雨天Zz 发表于 2020-9-3 20:31
奥,那}后面加了个分号,就是分先后顺序,先构造后定义吗?

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-3 20:32:45 | 显示全部楼层

后定义的话,还要必须单独加那个struct,是这个意思吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-3 20:33:38 | 显示全部楼层
雨天Zz 发表于 2020-9-3 20:32
后定义的话,还要必须单独加那个struct,是这个意思吗

C语言需要加struct,C++就不需要了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-13 02:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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