定义结构体的同时声明变量
#includestruct book{ int id; char name[20]; char type[20];}book1; // 在这里直接声明变量int main(){ scanf(%d %s %s,&book1.id,&book1.name,&book1.type); printf(编号:%d 名称:%s 类型:%s,book1.id,book1.name,book1.type); return 0;}输入:1 西游记 四大名著输出结果:编号:1 名称:西游记 类型:四大名著在定义结构体的同时,我们在结构体末尾的 } 处直接声明所需变量,相比起在主函数内再用struct book book1; 来声明变量要方便快捷的多。注意变量名后要以分号结尾。使用typedef,让结构体的使用更方便
#includetypedef struct book{ int id; char name[20]; char type[20];}book;int main(){ book book1; scanf(%d %s %s,&book1.id,&book1.name,&book1.type); printf(编号:%d 名称:%s 类型:%s,book1.id,book1.name,book1.type); return 0;}在不使用typedef的情况下,我们使用结构体来声明变量时需要加上struct,如:struct book book1。并且在有些情况下结构体的名字很长,当我们需要声明变量时,就会让代码看起来繁琐。这个时候,使用typedef为这个结构体定义一个使用它时的名字,我们就可以像使用 int 之类的变量类型一样,来使用结构体了。在本例中,我们将book结构体还用book来进行typedef定义。这样定义之后,我们就可以直接用“ book 变量名”来声明变量了。定义结构体的位置:
定义结构体的位置,也就是这段代码要放在什么位置才合适。方式1 :将定义结构体的代码放在主函数前
#includetypedef struct book{ int id; char name[20]; char type[20];}book;int main(){}我们可以这样理解,如果我们想要在主函数内使用结构体,那么我们在使用前一定要定义它,因为没有定义便不存在,不存在便无法使用。而程序的编译是自上而下进行的,因此定义结构体代码的位置要放在主函数前,否则就会报错。也就是说,在该结构体定义下面的所有代码与函数都可以使用该结构体,不止是主函数。方式2 :将定义结构体的代码放在主函数内部
#include int main(){ typedef struct book { int id; char name[20]; char type[20]; }book;}这个时候,该结构体只有在主函数内,并且位于定义该结构体代码下方的的代码才能使用。而位于主函数外,或主函数内但位于定义结构体代码上方的代码是无法使用的。
6款最不建议购买的手机:卡顿、发热严重!
康宁:未来显示市场有五大发展趋势
阿里云携手天猫举办芯片节,首发18款物联网芯片
我国移动通信行业是如何从零开始不断步入繁华的
CC4、CT4型独石(积层)电容器
定义结构体的同时声明变量
物联网对于可回收包装能否有用处
引物和扩增子设计对DNA扩增成功有何影响
英飞凌最新技术助力用于工业通用电机驱动的22千瓦参考设计
物联网植保设备助力智慧农业的快速发展
易联众电子健康卡入选智慧健康医疗创新应用实践案例优选创新榜单
新唐802.15.4 Thread参考设计方案的细部特点与市场机会
马斯克称支持特斯拉双重股权 人形机器人擎天柱明年有望实现首批交付
接地变压器的工作原理以及特点
DRAM、NAND flash和NOR flash三者牢牢控制着内存市场
无刷直流电机和有刷直流电机的区别
苹果8上市最新消息:iPhone8价格是多少?它将会带给我们什么黑科技?
电流互感器在开关电源中的应用
填补南极低层大气温度的激光雷达探测空白
探讨国内IC设计行业发展新模式