1. 先定义结构体类型,再定义结构体变量。

struct student{char no[20];       //学号char name[20];    //姓名char sex[5];    //性别int age;          //年龄
};
struct student stu1,stu2;
//此时stu1,stu2为student结构体变量

2. 定义结构体类型的同时定义结构体变量。

struct student{char no[20];        //学号char name[20];     //姓名char sex[5];      //性别int age;            //年龄
} stu1,stu2;

此时还可以继续定义student结构体变量,如:

struct student stu3;

3、不指定类型名而直接定义结构体变量

struct{char no[20];        //学号char name[20];      //姓名char sex[5];      //性别int age;          //年龄
} stu1,stu2;   

一般不使用这种方法,因为直接定义结构体变量stu1、stu2之后,就不能再继续定义该类型的变量。

4、用typedef定义结构体变量

typedef struct stdudent{char name[20];int age;
}student_t;

上面的代码,定义了一个结构体变量类型,这个类型有2个名字:第一个名字是struct student;第二个类型名字是student_t.

定义了这个之后,下面有2中方法可以定义结构体变量

第一种: struct student student_1;   //定义了一个student_1的结构体变量

第二种:student_t student_1            //定义了一个student_1的结构体变量

推荐在实际代码中使用第四种方法定义结构体变量。

C语言定义结构体的几种方法相关推荐

  1. c语言定义学生结构体类型,C语言中结构体的三种定义方式

    c语言中结构体的定义: struct 结构体名{ 成员列表: ..... }结构体变量: 7.1.1 结构体类型变量的定义 结构体类型变量的定义与其它类型的变量的定义是一样的,但由于结构体类型需要针对 ...

  2. Go语言初始化结构体的几种方式

    结构体在实例化时可以直接对成员变量进行初始化,初始化有两种形式分别是以字段"键值对"形式和多个值的列表形式,键值对形式的初始化适合选择性填充字段较多的结构体,多个值的列表形式适合填 ...

  3. 结构体初始化三种方法

    方法(一):定义时赋值 # include <stdio.h> struct AGE {int year;int month;int day; }; struct STUDENT {cha ...

  4. c语言中定义结构体指针的作用,c语言定义结构体指针

    int main() { typedef struct { u8 KeyCurrentIndex;//当前状态索引号 u8 KeyEnterState;//按下[enter]键时转向的索引号 u8 K ...

  5. struct结构体初始化3种方法

    From: http://blog.csdn.net/thdxs/article/details/8204118 struct是C中重要的ADT.但是在一般讲C的书中,往往只介绍了struct的定义. ...

  6. c语言中定义结构体指针的作用,C语言结构体定义,使用及指针(1)

    前言 C语言中的结构体作为一大难点,并且对于需要学习数据结构的同学来说,这个结构是每次上课都会遇到的,所以,我们只有更深层次的理解结构体的知识,才能更好的掌握数据结构 结构体用处 结构体到底有什么用? ...

  7. 定义结构体变量的三种方式

    #include <stdio.h>//定义结构体的三种方式,推荐使用第三种//第一种 struct student1 {int age;char name[20];float score ...

  8. c语言中结构体的用法

    一.定义 由于一个数组中只能存放同一种类型的数据,很不方便,所以C语言允许用户自己建立由不同类型数据组成的组合型的数据结构,也就是结构体,通俗讲就像是打包封装,把一些有共同特征(比如同属于某一类事物的 ...

  9. 11.Go语言干货-结构体

    1. 类型别名与自定义类型 1.1 自定义类型 在Go语言中有一些基本的数据类型,整型.string.浮点型.布尔等数据类型. 在Go语言中可以根据自身的需求,使用关键字type自定义数据类型. 自定 ...

  10. C语言程序设计——结构体

    文章目录 一. 为什么需要结构体 二. 什么叫结构体 三. 如何声明一个结构体 1. 声明一个结构体类型 四. 结构体类型变量的定义 1. 第一种方式(先声明结构体类型再定义变量名)(推荐使用) 2. ...

最新文章

  1. 东南大学计算机科学试验中心,受迫振动试验数据处理的研究-东南大学物理试验中心.doc...
  2. 阿里达摩院 AI医疗 「铸剑」四年:上线170家医院,落地57座城市
  3. 火锅店市场容量或变化趋势_2020-2026年中国氮肥市场深度研究与投资前景预测报告...
  4. Live Writer 在oschina上的代码高亮插件推荐
  5. sas table将缺失值计入百分比_SAS:通过数据块填充缺失值
  6. 数据结构与算法(一)——排序
  7. mysql 默认page大小_MySQL innodb_page_size
  8. python显示no matching distribution,Python使用pip安装No matching distribution found for PyYaml==5.3.1...
  9. 《转》安卓P 刘海屏的适配
  10. 【ABAP系列】SAP ABAP 从FTP服务器读取文件到本地
  11. 计算机一级msoffice考试选择题题库,计算机一级《MS Office》考前选择题题库与答案...
  12. Python使用标准库zipfile+re提取docx文档中超链接文本和链接地址
  13. html5中的td tr,html5 表格标签 table tr td
  14. 计算机科学与技术论文选题怎么选,比较好写的计算机科学与技术专业论文选题 计算机科学与技术专业论文题目如何取...
  15. SpringCloud微服务面试题
  16. [DX10游戏教程(C++)]教程1:在Visual Studio 2012中配置DirectX 10
  17. 关于u盘病毒的通用防治及查杀代码(转梦之光芒_)
  18. 图像质量评价常用数据库下载 |LIVE|MICT|CSIQ|TID2013|CID2013|CCID2014|LIVE-Challenge|LIVE-MultiDistortion|IVC_sub
  19. Kubernetes VS Mesos
  20. Python基于OpenCV的人脸识别自助商店(源码&部署视频)

热门文章

  1. 关于 未受信任的企业级开发者 提示的解决
  2. 在页眉插入横线或下划线
  3. python命名规则下划线list_详解 Python 中的下划线命名规则
  4. 电源过冲怎么测试软件,【经验】以DL3000电子负载为例,3分钟学会一个电源动态响应测试技巧...
  5. java 苹果cms 萌果_MacCMS8.x(苹果CMS8.x)整合Ckplayer6.4
  6. 文件读取漏洞路径收集
  7. ncsi信号测试软件,02-附录
  8. Laravel文档梳理9、Blade模板
  9. 中国石油大学《社交礼仪》在线考试
  10. POJ 2112 Optimal Milking(最大流)