一起来看看C语言世界中的结构体

 更新时间:2022年2月21日 17:15  点击:298 作者:Marksky126.

一、结构体的概念:

结构体是由一批数据聚合而成的结构型数据。

引入结构体,程序设计人员就可以根据需要定义用于描述事物不同属性的多个数据项,然后把这些数据项聚合成一个整体(结构体)来表示事物。

举个例子:

每个学生都有自己的信息。

struct student//结构体名
{
    int num;//结构体成员:学号
    char name[20];//结构体成员:名字
    float score;//结构体成员:成绩
};    //别忘记了这个分号

以上就是结构体的定义。

注意:结构体成员可以是任意类型的变量,但不允许是自身类型的变量。(不能自己的体内再放一个自己)

二、结构体变量的定义和初始化

结构体是一种数据类型,自然和其他基本数据类型一样,在定义了结构体类型后,还需要定义结构体类型的变量,C语言编译器才会为结构体变量分配存储单元,然后才能通过结构体变量来操作和访问结构体的数据。

结构体变量的定义

(1)单独定义

struct 结构体名
{
        类型名 结构体成员1;
        类型名 结构体成员2;
        类型名 结构体成员3;
};
    struct 结构体名 结构体变量名表;//结构体变量名表就相当于
//我们输入学生信息所指定的那个学生

(2)混合定义(在定义结构体的同时定义结构体变量)

struct 结构体名
{
        类型名 结构体成员1;
        类型名 结构体成员2;
        类型名 结构体成员3;
}结构体变量名表;//即直接定义学生姓名,不用重复写struct 结构体名,然后再写学生姓名

结构体变量的初始化

和其他基本类型一样,结构体变量也可以初始化

初始化的格式一般为:

struct 结构体名 结构体变量名 = { 初始化值1, 初始化值2......初始化值n};

接下来我们使用上面学生信息来举个例: 

struct student//结构体名
{
    int num;//结构体成员:学号
    char name[20];//结构体成员:名字
    float score;//结构体成员:成绩
};    //别忘记了这个分号

struct student = { 1 张三 88.9};

 三、结构体变量的使用(" . "与" -> "的使用)

 (1)" . "的使用1级运算符,结合方向从左到右):

结构体变量名 . 结构体成员名

依然使用学生信息来举例: 

struct student//结构体名
{
    int num;//结构体成员:学号
    char name[20];//结构体成员:名字
    float score;//结构体成员:成绩
}stu1,stu2;    
stu1.score = 90.0;

 (2)"->"的使用(1级运算符,结合方向从左到右):

格式:

结构体指针变量名->结构体成员名

还是那个例子: 

struct student//结构体名
{
    int num;//结构体成员:学号
    char name[20];//结构体成员:名字
    float score;//结构体成员:成绩
}stu1,stu2;    
struct student *p=&stu1;
p->score=55.5;//意为将55.5赋值给p指向的结构体变量stu1的score成员

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注猪先飞的更多内容!  

原文出处:https://blog.csdn.net/m0_60653728/article/details/122736746

[!--infotagslink--]

相关文章

  • C语言实现放烟花的程序

    这篇文章主要为大家详细介绍了C语言实现放烟花的程序,有音乐播放,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-23
  • C语言中的字符(char)详细讲解

    本篇文章主要介绍C语言中char的知识,并附有代码实例,以便大家在学习的时候更好的理解,有需要的可以看一下...2020-04-25
  • C#开发Windows窗体应用程序的简单操作步骤

    这篇文章主要介绍了C#开发Windows窗体应用程序的简单操作步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-12
  • 详解如何将c语言文件打包成exe可执行程序

    这篇文章主要介绍了详解如何将c语言文件打包成exe可执行程序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-25
  • C#窗体布局方式详解

    这篇文章主要介绍了C#窗体布局方式详解的相关资料,需要的朋友可以参考下...2020-06-25
  • C#数据结构之队列(Quene)实例详解

    这篇文章主要介绍了C#数据结构之队列(Quene),结合实例形式较为详细的讲述了队列的功能、原理与C#实现队列的相关技巧,需要的朋友可以参考下...2020-06-25
  • C#创建简单windows窗体应用(加法器)

    这篇文章主要为大家详细介绍了C#创建一个简单windows窗体应用的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25
  • C语言中free函数的使用详解

    free函数是释放之前某一次malloc函数申请的空间,而且只是释放空间,并不改变指针的值。下面我们就来详细探讨下...2020-04-25
  • C语言中计算正弦的相关函数总结

    这篇文章主要介绍了C语言中计算正弦的相关函数总结,包括正弦和双曲线正弦以及反正弦的函数,需要的朋友可以参考下...2020-04-25
  • 详解C语言中的rename()函数和remove()函数的使用方法

    这篇文章主要介绍了详解C语言中的rename()函数和remove()函数的使用方法,是C语言入门学习中的基础知识,需要的朋友可以参考下...2020-04-25
  • C语言中求和、计算平均值、方差和标准差的实例

    这篇文章主要介绍了C语言中求和、计算平均值、方差和标准差的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-12-10
  • 浅析C# 结构体struct

    这篇文章主要介绍了C# 结构体struct 的相关资料,帮助大家更好的理解和学习c#,感兴趣的朋友可以了解下...2020-11-03
  • 简单实现C#窗体程序判断是否闰年

    这篇文章主要介绍了简单实现C#窗体程序判断是否闰年的相关代码,禁止窗体调整大小,关闭窗体前的判断,感兴趣的小伙伴们可以参考一下...2020-06-25
  • C语言的基本语法详解

    本篇文章主要讲解C语言 基本语法,这里提供简单的示例和代码来详细讲解C语言的基本语法,开始学习C语言的朋友可以看一下,希望能够给你带来帮助...2021-09-18
  • C语言中send()函数和sendto()函数的使用方法

    这篇文章主要介绍了C语言中send()函数和sendto()函数的使用方法,是C语言入门学习中的基础知识,需要的朋友可以参考下...2020-04-25
  • C#实现窗体间传递数据实例

    这篇文章主要介绍了C#实现窗体间传递数据实例,需要的朋友可以参考下...2020-06-25
  • 轻松学习C#的结构和类

    轻松学习C#的结构和类,对C#的结构和类感兴趣的朋友可以参考本篇文章,帮助大家更灵活的运用C#的结构和类。...2020-06-25
  • js简单实现调整网页字体大小的方法

    这篇文章主要介绍了js简单实现调整网页字体大小的方法,通过javascript动态修改页面元素样式实现调整网页字体的功能,非常简单实用,需要的朋友可以参考下...2016-07-29
  • 关于C#结构体 你需要知道的

    这篇文章主要介绍了关于C#结构体的相关知识,以及使用方法,文中代码非常详细,帮助大家更好的参考和学习,感兴趣的朋友可以了解下...2020-06-25
  • C语言实现从文件读入一个3*3数组,并计算每行的平均值

    今天小编就为大家分享一篇C语言实现从文件读入一个3*3数组,并计算每行的平均值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-04-25